@font-face{font-family:Aporetic Sans;src:url(/assets/aporetic-sans-regular-DA8QLXgi.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Aporetic Sans;src:url(/assets/aporetic-sans-bold-D67Gl5HP.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-regular-base-CBp-i5Fg.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-regular-ext-CMZmQGqJ.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-regular-notation-D0QLJZEy.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-italic-base-CYfnDF1F.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-italic-ext-BBBkUi7W.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Serif;src:url(/assets/aporetic-serif-italic-notation-Dw2ViTr1.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-regular-base-CjEl1qbT.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-regular-ext-BEbUX4fD.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-regular-notation-V9Qn8J-R.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-italic-base-C3Kq7tDy.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-italic-ext-DX_5s_qp.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Serif Mono;src:url(/assets/aporetic-serif-mono-italic-notation-BQNJl4YA.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-regular-base-CehRaMET.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-regular-ext-C0cjPtv4.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-regular-notation-DixNci7Y.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-italic-base-Catg5mQ8.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0-24F,U+300-36F,U+2000-206F,U+2070-209F,U+20A0-20BF,U+23CE}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-italic-ext-TNzSQolc.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+250-2FF,U+370-3FF,U+1F??,U+400-52F,U+1E??}@font-face{font-family:Aporetic Sans Mono;src:url(/assets/aporetic-sans-mono-italic-notation-BolyYZ0V.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+2100-218F,U+2190-21FF,U+22??,U+2300-23CD,U+23CF-23FF,U+2400-243F,U+25A0-25FF,U+26??,U+2700-27EF,U+2980-29FF,U+2A??}:root{--ui:"Aporetic Sans", system-ui, sans-serif;--serif:"Aporetic Serif", Garamond, Georgia, serif;--mono:"Aporetic Serif Mono", ui-monospace, monospace;--mono-sans:"Aporetic Sans Mono", ui-monospace, monospace;--page:46rem;--measure:64ch;--page-wide:64rem;--space-xs:.25rem;--space-sm:.5rem;--space-md:.75rem;--space-lg:1rem;--space-xl:1.25rem;--space-2xl:1.5rem;--space-3xl:2rem;--space-4xl:2.5rem;--space-5xl:3rem;--type-micro:.7rem;--type-label:.8rem;--type-control:.85rem;--type-aside:.9rem;--type-body:1rem;--type-lead:1.1rem;--type-heading:1.3rem;--radius-sm:.1875rem;--radius:.375rem;--radius-lg:.5rem;--radius-pill:999px;--hairline:1px;--focus-ring:2px;--caret-width:2px;--travel:.2s;--caret-travel:.1s;--lift:0 1px 3px #0000001a, 0 6px 20px #00000012;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root,:root[data-palette=monotropa]{--paper:var(--lightningcss-light,#fff)var(--lightningcss-dark,#000);--panel:var(--lightningcss-light,#fcfcfc)var(--lightningcss-dark,#0a0a0a);--ink:var(--lightningcss-light,#000)var(--lightningcss-dark,#ededed);--slate:var(--lightningcss-light,#767676)var(--lightningcss-dark,#8c8c8c);--mist:var(--lightningcss-light,#ccc)var(--lightningcss-dark,#2a2a2a);--accent:var(--lightningcss-light,#3355c9)var(--lightningcss-dark,#7b9bff);--alarm:var(--lightningcss-light,#c62828)var(--lightningcss-dark,#ff5f5f);--sacred:var(--lightningcss-light,#a5161a)var(--lightningcss-dark,#ff9a8a);--cat-halo:var(--lightningcss-light,#0000)var(--lightningcss-dark,#ededed99);--hover-ink:var(--ink);--hover-edge:var(--accent);--hover-tint:linear-gradient(var(--accent-wash) 0 100%)}:root{--accent-soft:color-mix(in srgb, var(--accent) 15%, transparent);--alarm-soft:color-mix(in srgb, var(--alarm) 15%, transparent);--accent-wash:color-mix(in srgb, var(--accent) 8%, transparent);--finger-l-pinky:var(--lightningcss-light,#6b3fa0)var(--lightningcss-dark,#b79bff);--finger-l-ring:var(--lightningcss-light,#2060b8)var(--lightningcss-dark,#7fb0ff);--finger-l-middle:var(--lightningcss-light,#0f6f76)var(--lightningcss-dark,#5fc9c9);--finger-l-index:var(--lightningcss-light,#2e7031)var(--lightningcss-dark,#7fc47f);--finger-r-index:var(--lightningcss-light,#7d6000)var(--lightningcss-dark,#d9b64a);--finger-r-middle:var(--lightningcss-light,#9c4d0c)var(--lightningcss-dark,#f0a06a);--finger-r-ring:var(--lightningcss-light,#a83258)var(--lightningcss-dark,#f090b0);--finger-r-pinky:var(--lightningcss-light,#a01f2e)var(--lightningcss-dark,#ff8080);--finger-thumb:var(--lightningcss-light,#666)var(--lightningcss-dark,#a0a0a0)}.cat{filter:drop-shadow(0 0 1.5px var(--cat-halo))}*{box-sizing:border-box}[hidden]{display:none!important}html{scrollbar-gutter:stable;font-size:125%}html,body{background:var(--paper);color:var(--ink);font-family:var(--ui);margin:0;line-height:1.5}main{padding:0 var(--space-xl) var(--space-5xl);margin:0 auto}#screen-settings,#screen-account{max-width:var(--page);margin-inline:auto}#screen-setup{max-width:var(--page-wide);margin-inline:auto}#screen-practice{flex-direction:column;width:fit-content;max-width:100%;height:calc(100dvh - 4rem);margin-inline:auto;display:flex}#screen-practice:has(>.text-panel.einkehr){height:100dvh}main:has(>#screen-practice:not([hidden])){padding-bottom:0}#screen-practice>.keyboard{flex:none;width:0;min-width:100%}#screen-practice>.text-panel{padding-top:var(--space-lg);-webkit-mask-image:linear-gradient(to bottom, transparent, #000 var(--space-2xl));mask-image:linear-gradient(to bottom, transparent, #000 var(--space-2xl));scrollbar-width:none;overscroll-behavior:contain;overflow-y:auto}#screen-practice>.text-panel::-webkit-scrollbar{display:none}#screen-practice>.text-panel.einkehr{padding-top:var(--space-3xl)}button{font:inherit;cursor:pointer}:focus-visible{outline:var(--focus-ring) solid var(--accent);outline-offset:var(--focus-ring)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}#key-input{position:fixed;top:0;left:0}.masthead{align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.masthead-session{align-items:center;gap:var(--space-md);grid-column:1;display:flex}.wordmark{font:inherit;font-size:var(--type-control);letter-spacing:.02em;color:var(--ink);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-weight:600}.wordmark:hover{color:var(--hover-ink)}.masthead-links{align-items:center;gap:var(--space-md);grid-column:3;justify-self:end;display:flex}.masthead-tabs{align-items:center;gap:var(--space-xs);grid-column:2;justify-self:center;display:flex}.tab{color:var(--slate);border-radius:var(--radius);padding:var(--space-xs) var(--space-sm);font-size:var(--type-control);letter-spacing:.02em;white-space:nowrap;background:0 0;border:0;font-weight:600}.tab:hover{color:var(--hover-ink);background-image:var(--hover-tint)}.tab.on{color:var(--ink);background:var(--accent-wash)}.masthead-burger{display:none}.masthead-menu{border:0;border-bottom:var(--hairline) solid var(--mist);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--panel);width:100%;max-width:100%;color:var(--ink);padding:var(--space-md) 0 var(--space-lg);font-family:var(--ui);box-shadow:var(--lift);margin:0;inset:0 0 auto}.masthead-menu::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073}.menu-sheet{flex-direction:column;display:flex}.menu-item{align-items:center;gap:var(--space-md);color:var(--ink);padding:var(--space-md) var(--space-xl);font:inherit;font-size:var(--type-control);letter-spacing:.02em;text-align:start;cursor:pointer;background:0 0;border:0;font-weight:600;display:flex}.menu-item:focus-visible{outline-offset:calc(-2 * var(--focus-ring))}.menu-item:hover{color:var(--hover-ink);background-image:var(--hover-tint)}.menu-item.on{background:var(--accent-wash)}.menu-mark{width:1.2em;color:var(--slate);text-align:center;flex:none;font-size:1.15rem;line-height:1}.menu-rule{margin:var(--space-sm) var(--space-xl);border-top:var(--hairline) solid var(--mist)}.masthead-hud{align-items:center;gap:var(--space-lg);grid-column:2;display:flex}.hud-stat{align-items:baseline;gap:var(--space-xs);display:flex}.hud-num{font-size:var(--type-lead);font-variant-numeric:tabular-nums;text-align:right;font-weight:500}.hud-wpm{min-width:3ch}.hud-accuracy{min-width:6ch}.hud-label{font-size:var(--type-micro);letter-spacing:.08em;text-transform:lowercase;color:var(--slate)}.hud-pct{min-width:4ch;font-size:var(--type-label);font-variant-numeric:tabular-nums;text-align:right;color:var(--slate);white-space:nowrap}.masthead-progress{width:20rem;position:relative}.bar{border-radius:var(--radius-sm);background:var(--mist);height:.25rem;position:relative;overflow:hidden}.bar-fill{background:var(--accent);border-radius:var(--radius-sm);width:0%;height:100%;transition:width var(--travel) ease-out}.bar-tick{width:var(--hairline);background:var(--paper);position:absolute;top:0;bottom:0}.cat{width:1.5rem;height:1.125rem;transition:left var(--travel) ease-out;position:absolute;bottom:0;left:0%;transform:translate(-50%)}.cat.oops{animation:.45s ease-out stumble}@keyframes stumble{0%{transform:translate(-50%)rotate(0)}30%{transform:translate(-50%)rotate(-24deg)translateY(-.3125rem)}60%{transform:translate(-50%)rotate(12deg)}to{transform:translate(-50%)rotate(0)}}.field{margin:var(--space-lg) 0;display:block}.label{font-size:var(--type-label);letter-spacing:.06em;text-transform:lowercase;color:var(--slate);margin-bottom:var(--space-xs);font-weight:600;display:block}#title-input,#text-input{border:none;border-bottom:var(--hairline) solid transparent;width:100%;color:var(--ink);padding:var(--space-sm) 0;font-family:var(--ui);font-size:var(--type-body);background:0 0;border-radius:0}#title-input{font-family:var(--serif);font-style:italic;font-size:var(--type-heading)}#text-input{font-family:var(--mono);font-size:var(--type-aside);resize:vertical;min-height:10rem}#title-input:focus,#text-input:focus{border-bottom-color:var(--accent);outline:none}.setup-row{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.samples{gap:var(--space-sm);flex-wrap:wrap;flex:1;display:flex}.chip{border:var(--hairline) solid var(--mist);background:var(--panel);color:var(--ink);border-radius:var(--radius-pill);padding:var(--space-xs) var(--space-md);font-size:var(--type-control)}.chip:hover{border-color:var(--hover-edge);color:var(--hover-ink);background-image:var(--hover-tint)}.primary{background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:var(--space-sm) var(--space-2xl);border:none;font-weight:600}.primary:hover{background:var(--accent)}.file-btn{display:inline-block}.file-btn:focus-within{outline:var(--focus-ring) solid var(--accent);outline-offset:var(--focus-ring)}.check{align-items:center;gap:var(--space-sm);font-size:var(--type-control);color:var(--slate);display:flex}.check input{accent-color:var(--accent)}.import-error{color:var(--alarm)}.saved-row{gap:var(--space-sm);margin-bottom:var(--space-sm);align-items:stretch;display:flex}.saved-open{align-items:center;gap:var(--space-md);border:var(--hairline) solid var(--mist);background:var(--panel);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);text-align:left;flex:1;display:flex}.saved-open:hover{border-color:var(--hover-edge);background-image:var(--hover-tint)}.saved-line{justify-content:space-between;align-items:baseline;gap:var(--space-lg);flex:1;min-width:0;display:flex}.saved-title{flex:1;font-weight:500}.saved-sample{color:var(--slate);font-style:italic;font-weight:400}.saved-cover{flex:none;width:2.75rem;display:block}.saved-cover .cover-drawn{gap:0;padding:0}.saved-cover .cover-title,.saved-cover .cover-rule,.saved-cover .cover-author,.saved-cover .cover-mark{display:none}.kind{color:var(--slate);flex:0 0 1.2em;font-size:1em;font-weight:600}.saved-meta{color:var(--slate);font-variant-numeric:tabular-nums;white-space:nowrap}.saved-nest{margin-left:var(--space-lg);padding-left:var(--space-md);border-left:var(--hairline) solid var(--mist)}.saved-delete{border:var(--hairline) solid var(--mist);background:var(--panel);color:var(--slate);border-radius:var(--radius);width:2.4rem;font-size:var(--type-lead)}.saved-delete:hover{color:var(--hover-ink);border-color:var(--hover-edge);background-image:var(--hover-tint)}.shelf-body.cards{gap:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(min(26rem,100%),1fr));grid-auto-rows:12rem;display:grid}.shelf-body.cards:not(:has(.saved-cover)){grid-auto-rows:6rem}.cards>.shelf-empty,.cards>.import-error{grid-column:1/-1}.cards .saved-row{margin-bottom:0;position:relative}.cards .saved-open{align-items:stretch;height:100%;padding:0;overflow:hidden}.cards .saved-cover{aspect-ratio:2/3;flex:none;width:auto;height:100%}.cards .saved-cover .cover{border-radius:0;height:100%}.cards .saved-cover .cover-title,.cards .saved-cover .cover-rule,.cards .saved-cover .cover-author,.cards .saved-cover .cover-mark{display:block}.cards .saved-cover .cover-drawn{gap:var(--space-sm);padding:var(--space-md);border:0;border-right:var(--hairline) solid var(--mist);border-radius:0;overflow:hidden}.cards .saved-cover .cover-title{-webkit-line-clamp:4;font-size:var(--type-label);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cards .saved-cover .cover-author{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.cards .saved-line{justify-content:flex-start;align-items:stretch;gap:var(--space-xs);padding:var(--space-lg) var(--space-lg) var(--space-lg) 0;flex-direction:column;overflow:hidden}.cards .saved-open:not(:has(.saved-cover)) .saved-line{padding-left:var(--space-lg)}.cards .saved-title{font-size:var(--type-aside);line-height:1.3}.cards .saved-head{align-items:baseline;gap:var(--space-xs);padding-right:var(--space-2xl);min-width:0;display:flex}.cards .saved-author{font-size:var(--type-micro);color:var(--slate)}.cards .saved-tags{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.saved-tag{padding:0 var(--space-sm);font-size:var(--type-micro);color:var(--slate)}.cards .saved-meta{padding-top:var(--space-sm);border-top:var(--hairline) solid var(--mist);font-size:var(--type-micro);margin-top:auto}.cards .saved-delete{top:var(--space-sm);right:var(--space-sm);width:auto;padding:0 var(--space-xs);background:0 0;border:0;line-height:1;position:absolute}.cards .saved-delete:hover{color:var(--hover-ink);background-image:none}.tool{border:var(--hairline) solid var(--mist);background:var(--panel);color:var(--ink);border-radius:var(--radius);padding:var(--space-xs) var(--space-md);font-size:var(--type-control)}.tool:hover{border-color:var(--hover-edge);color:var(--hover-ink);background-image:var(--hover-tint)}.quiet{color:var(--slate);padding:var(--space-xs) 0;font-size:var(--type-label);white-space:nowrap;background:0 0;border:0}.quiet:hover{color:var(--hover-ink);background-image:var(--hover-tint)}.masthead-glyph{padding-inline:var(--space-xs);font-size:1.15rem;font-weight:600;line-height:1}.text-panel{--type-size:28px;width:var(--measure);max-width:100%;padding:var(--space-3xl) 0;font-family:var(--mono);font-size:var(--type-size);overflow-wrap:anywhere;white-space:pre-wrap;cursor:text;flex:1;min-height:12rem;line-height:1.9;position:relative;overflow:hidden}.text-panel.sans{font-family:var(--mono-sans)}.text-panel.unfocused{opacity:.55}.text-panel.unfocused:after{content:"click to type";margin-top:var(--space-lg);font-family:var(--ui);font-size:var(--type-label);color:var(--slate);display:block}.g{white-space:pre-wrap}.g.pending{color:var(--ink)}.g.correct{color:var(--slate)}.g.wrong{color:var(--alarm);background:var(--alarm-soft);text-decoration:underline;-webkit-text-decoration-color:var(--alarm);text-decoration-color:var(--alarm);text-underline-offset:.2em;border-radius:var(--radius-sm)}.g.nl{color:var(--slate)}.g.nl.correct{color:var(--mist)}.g.nl.wrong{color:var(--alarm)}.nebentext{font-family:var(--serif);color:var(--slate);margin:var(--space-sm) 0;font-size:.65em;line-height:1.4;display:block}.nebentext-speaker{letter-spacing:.08em;margin-top:var(--space-lg)}.nebentext-stage{font-style:italic}.nebentext-stage.inline{margin:0;padding-right:.5em;display:inline}.nebentext-head{margin-top:var(--space-2xl);font-size:.72em}.nebentext-verse{vertical-align:super;padding-right:var(--space-xs);margin:0;font-size:.6em;display:inline}.nebentext-note{vertical-align:super;margin:0;padding:0;font-size:.6em;font-style:italic;display:inline}.g.emph{font-style:italic}.text-panel.red-letter .g.sacred:not(.wrong){color:var(--sacred)}.text-panel.red-letter .g.sacred.correct:not(.wrong){color:color-mix(in srgb, var(--sacred) 55%, transparent)}.caret-bar{width:var(--caret-width);background:var(--accent);pointer-events:none;transition:translate var(--caret-travel) ease-out;animation:1.1s steps(2,jump-none) infinite caret-blink;position:absolute;top:0;left:0}.caret-bar.jump{transition:none}.caret-bar.off{visibility:hidden}@keyframes caret-blink{50%{opacity:0}}.line-recap{font-family:var(--ui);font-size:var(--type-label);color:var(--slate);font-variant-numeric:tabular-nums;margin:var(--space-xs) 0 var(--space-sm);line-height:1.4}.text-panel.einkehr .line-recap{display:none}.shortcuts{left:var(--space-xl);z-index:2;background:var(--panel);border:var(--hairline) solid var(--mist);border-radius:var(--radius-lg);width:13rem;box-shadow:var(--lift);padding:var(--space-md) var(--space-lg);position:fixed;top:50%;translate:0 -50%}.shortcuts h3{font-size:var(--type-label);letter-spacing:.06em;text-transform:lowercase;color:var(--slate);margin:0;font-weight:600}.shortcuts-list{margin:var(--space-sm) 0 0}.shortcut{margin-bottom:var(--space-md)}.shortcut dt{margin-bottom:var(--space-xs)}.shortcut dd{font-size:var(--type-label);color:var(--slate);margin:0}kbd{border:var(--hairline) solid var(--mist);border-radius:var(--radius-sm);background:var(--paper);padding:0 var(--space-xs);font-family:var(--mono);font-size:var(--type-micro);white-space:nowrap;display:inline-block}.shortcuts-note{margin:var(--space-sm) 0 0;font-size:var(--type-micro);color:var(--slate)}.dock{right:var(--space-xl);z-index:2;align-items:center;gap:var(--space-xs);background:var(--panel);border:var(--hairline) solid var(--mist);border-radius:var(--radius-lg);box-shadow:var(--lift);padding:var(--space-sm) var(--space-xs);flex-direction:column;display:flex;position:fixed;top:50%;translate:0 -50%}.dock-btn{border:var(--hairline) solid transparent;width:2.2rem;height:2.2rem;color:var(--slate);border-radius:var(--radius);background:0 0;justify-content:center;align-items:center;padding:0;font-size:1.05rem;font-weight:600;display:inline-flex}.dock-btn:hover{border-color:var(--hover-edge);color:var(--hover-ink);background-image:var(--hover-tint)}.dock-btn.on{background:var(--accent-soft);color:var(--accent)}.dock-rule{border-top:var(--hairline) solid var(--mist);width:1.2rem}.keyboard{align-items:center;gap:var(--space-xs);margin-top:var(--space-3xl);flex-direction:column;display:flex}.key-row{justify-content:center;gap:var(--space-xs);display:flex}.key.l-pinky{--finger:var(--finger-l-pinky)}.key.l-ring{--finger:var(--finger-l-ring)}.key.l-middle{--finger:var(--finger-l-middle)}.key.l-index{--finger:var(--finger-l-index)}.key.r-index{--finger:var(--finger-r-index)}.key.r-middle{--finger:var(--finger-r-middle)}.key.r-ring{--finger:var(--finger-r-ring)}.key.r-pinky{--finger:var(--finger-r-pinky)}.key.thumb{--finger:var(--finger-thumb)}.key{border:var(--hairline) solid var(--mist);background:var(--panel);border-radius:var(--radius);width:2.2rem;height:2.2rem;font-family:var(--mono);font-size:var(--type-control);color:var(--ink);box-shadow:inset 0 -.1875rem 0 var(--finger,transparent);justify-content:center;align-items:center;display:inline-flex}.key.want{background:var(--finger,var(--accent));border-color:var(--finger,var(--accent));color:var(--paper);box-shadow:none}.key.space{width:11rem}.done-dialog{width:min(30rem, calc(100% - var(--space-3xl)));border:var(--hairline) solid var(--mist);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);padding:var(--space-3xl);font-family:var(--ui)}.done-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073}.done-note{color:var(--slate);font-size:var(--type-label);margin:0}.done-stats{gap:var(--space-sm) var(--space-3xl);margin:var(--space-xl) 0 var(--space-xl);grid-template-columns:max-content max-content;justify-content:center;display:grid}.done-stats dt{color:var(--slate)}.done-stats dd{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-weight:600}.done-stats dd.level-up{color:var(--accent)}.done-actions{gap:var(--space-md);justify-content:center;display:flex}.colophon{text-align:center;color:var(--slate);font-size:var(--type-label);padding:var(--space-lg) 0 var(--space-3xl)}.colophon:empty{display:none}@media (prefers-reduced-motion:reduce){.cat,.bar-fill{transition:none}.cat.oops{animation:none}.caret-bar{transition:none;animation:none}}.shelf{margin-top:var(--space-xl)}.composer{max-width:var(--page);margin-top:var(--space-lg);margin-inline:auto}.shelf-toolbar{align-items:center;gap:var(--space-md);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.shelf-search{border:var(--hairline) solid var(--mist);background:var(--panel);min-width:8rem;color:var(--ink);border-radius:var(--radius);padding:var(--space-sm) var(--space-md);font:inherit;font-size:var(--type-control);flex:1}.shelf-search::placeholder{color:var(--slate)}.shelf-filter{max-width:12rem;font-size:var(--type-control);flex:none}.shelf-body{padding-top:var(--space-md)}.shelf-body:not(.cards){max-width:var(--page);margin-inline:auto}.shelf-empty{margin:var(--space-xl) 0;font-size:var(--type-aside);color:var(--slate)}.shelf-head{margin:var(--space-sm) 0 var(--space-lg);font-family:var(--serif);font-style:italic;font-weight:500;font-size:var(--type-heading)}.book-head{align-items:start;column-gap:var(--space-2xl);row-gap:var(--space-lg);max-width:var(--page);margin:var(--space-sm) auto var(--space-lg);grid-template:"art facts""go facts"1fr"tabs tabs"/12rem 1fr;display:grid}.book-art{grid-area:art}.book-facts{grid-area:facts;min-width:0}.book-title{font-family:var(--serif);font-style:italic;font-weight:500;font-size:var(--type-heading);margin:0}.book-author{margin:var(--space-xs) 0 0;color:var(--slate)}.book-tags{gap:var(--space-sm);margin:var(--space-md) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.book-stats{margin:var(--space-md) 0 0;color:var(--slate);font-size:var(--type-aside);font-variant-numeric:tabular-nums}.book-blurb{margin-top:var(--space-lg);white-space:pre-line}.book-blurb p{margin:0}.book-more{margin-top:var(--space-sm);color:var(--slate);font-size:var(--type-micro);background:0 0;border:0;padding:0}.book-more:hover{color:var(--hover-ink);text-decoration:underline}.book-go{text-align:center;grid-area:go}.book-go button{width:100%}.book-hint{margin:var(--space-sm) 0 0;color:var(--slate);font-size:var(--type-micro)}.book-tabs{grid-area:tabs;width:fit-content;margin:0}.book-tabs .seg{padding-inline:var(--space-xl);flex:none}@media (width<=42em){.book-head{grid-template-rows:none;grid-template-columns:1fr;grid-template-areas:"art""facts""go""tabs"}.book-art{width:7rem}}.account-dialog{width:min(26rem, calc(100% - var(--space-3xl)));border:var(--hairline) solid var(--mist);border-radius:var(--radius-lg);background:var(--panel);color:var(--ink);padding:var(--space-3xl);font-family:var(--ui)}.account-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000073}.dialog-close{top:var(--space-sm);right:var(--space-md);color:var(--slate);font-size:var(--type-heading);padding:var(--space-xs) var(--space-sm);background:0 0;border:none;line-height:1;position:absolute}.dialog-close:hover{color:var(--hover-ink);background-image:var(--hover-tint)}.dialog-heading{margin:0 0 var(--space-sm);font-size:var(--type-lead);font-weight:600}.segmented{border:var(--hairline) solid var(--mist);border-radius:var(--radius);margin-bottom:var(--space-sm);display:flex;overflow:hidden}.seg{background:var(--panel);color:var(--slate);padding:var(--space-sm);font-size:var(--type-control);border:none;flex:1;font-weight:600}.seg:hover{color:var(--hover-ink);background-image:var(--hover-tint)}.seg.on{background:var(--ink);color:var(--paper)}.account-dialog input[type=email],.account-dialog input[type=password],.account-dialog input[type=text],#screen-account input[type=text],.danger-zone input[type=password]{border:var(--hairline) solid var(--mist);border-radius:var(--radius);background:var(--paper);width:100%;color:var(--ink);font:inherit;padding:var(--space-sm)}.account-dialog input:focus-visible,#screen-account input:focus-visible{outline:var(--focus-ring) solid var(--accent);outline-offset:var(--focus-ring)}.dialog-actions{justify-content:flex-end;align-items:center;gap:var(--space-sm);margin-top:var(--space-xl);display:flex}.dialog-note{margin:var(--space-lg) 0 0;font-size:var(--type-control);color:var(--slate);line-height:1.45}.dialog-note:empty{display:none}.dialog-note.bad{color:var(--alarm)}.dialog-rule{border:none;border-top:var(--hairline) solid var(--mist);margin:var(--space-2xl) 0 0}.account-line{align-items:center;gap:var(--space-sm);margin:var(--space-md) 0 0;display:flex}.account-email{overflow-wrap:anywhere;font-weight:600}.account-sub{margin:var(--space-xs) 0 0;font-size:var(--type-control);color:var(--slate);overflow-wrap:anywhere}.badge{border-radius:var(--radius-pill);padding:var(--space-xs) var(--space-sm);font-size:var(--type-micro);letter-spacing:.04em;background:var(--accent-soft);color:var(--accent);flex:none;font-weight:600}.danger:hover{border-color:var(--alarm);background:var(--alarm);color:var(--paper)}.page-head{margin:var(--space-sm) 0 var(--space-2xl);font-family:var(--serif);font-style:italic;font-weight:500;font-size:var(--type-heading)}.setting{justify-content:space-between;align-items:center;gap:var(--space-md) var(--space-2xl);margin:0 0 var(--space-lg);flex-wrap:wrap;display:flex}.setting-seg{flex:0 17rem;margin-bottom:0}.setting-stack{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.size-row{align-items:center;gap:var(--space-sm);display:flex}.size-out{text-align:center;font-variant-numeric:tabular-nums;min-width:3.4rem;font-size:var(--type-aside);color:var(--slate)}.settings-preview{min-height:0;margin-top:var(--space-sm);cursor:default;white-space:normal;padding:0}.heatmap{margin-top:var(--space-4xl);margin-bottom:var(--space-4xl)}.heatmap h3{font-size:var(--type-label);letter-spacing:.04em;text-transform:uppercase;color:var(--slate);margin:0 0 var(--space-sm)}.heatmap-note{font-size:var(--type-aside);color:var(--slate);margin:0 0 var(--space-md)}.heatmap-grid{gap:var(--space-sm);font-size:var(--type-micro);padding-bottom:var(--space-xs);display:flex;overflow-x:auto}.heatmap-weekdays{gap:var(--space-xs);color:var(--slate);flex:none;grid-template-rows:repeat(7,1fr);line-height:1em;display:grid}.heatmap-weeks{gap:var(--space-xs);display:flex}.heatmap-week{gap:var(--space-xs);grid-template-rows:repeat(7,1fr);display:grid}.heatmap-day{border-radius:var(--radius-sm);background:var(--mist);block-size:1em;inline-size:1em}.heatmap-day[data-level="1"]{background:color-mix(in srgb, var(--accent) 25%, var(--mist))}.heatmap-day[data-level="2"]{background:color-mix(in srgb, var(--accent) 50%, var(--mist))}.heatmap-day[data-level="3"]{background:color-mix(in srgb, var(--accent) 75%, var(--mist))}.heatmap-day[data-level="4"]{background:var(--accent)}.heatmap-day.blank{background:0 0}.danger-zone{border:var(--hairline) solid var(--alarm);border-radius:var(--radius-lg);padding:var(--space-lg) var(--space-xl) var(--space-xl);margin-top:var(--space-4xl)}.danger-zone h3{margin:0 0 var(--space-sm);font-size:var(--type-label);letter-spacing:.08em;text-transform:uppercase;color:var(--alarm);font-weight:600}.danger-zone p{margin:0 0 var(--space-lg);font-size:var(--type-aside);color:var(--slate);line-height:1.5}.account-book{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.account-book:hover{color:var(--hover-ink);text-decoration:underline}.dashboard{padding-top:var(--space-2xl)}.dashboard-charts{gap:var(--space-3xl) var(--space-2xl);margin-bottom:var(--space-4xl);grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));display:grid}.dashboard-block{max-width:var(--page);margin-bottom:var(--space-4xl)}.dashboard-block h3,.chart h3{margin:0 0 var(--space-md);font-size:var(--type-label);letter-spacing:.04em;text-transform:uppercase;color:var(--slate);font-weight:600}.dashboard-note,.chart-note{font-size:var(--type-aside);color:var(--slate);margin:0}.dashboard-list{margin:0;padding:0;list-style:none}.dashboard-row{gap:var(--space-md);width:100%;padding:var(--space-sm) var(--space-md);font:inherit;text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;align-items:baseline;display:flex}.dashboard-row:hover{background:var(--hover-tint);color:var(--hover-ink)}.dashboard-run{gap:var(--space-md);padding:var(--space-sm) var(--space-md);align-items:baseline;display:flex}.dashboard-mark{color:var(--slate);flex:none;font-size:1em;font-weight:600}.dashboard-row-title{font-size:var(--type-aside);color:var(--ink)}.dashboard-row-meta,.dashboard-when{font-size:var(--type-micro);color:var(--slate)}.dashboard-when{font-variant-numeric:tabular-nums;margin-left:auto}.dashboard-more{margin-top:var(--space-sm);padding:var(--space-xs) var(--space-md);font:inherit;font-size:var(--type-micro);color:var(--slate);cursor:pointer;background:0 0;border:0}.dashboard-more:hover{color:var(--hover-ink)}.chart-plot{width:100%;height:auto;display:block}.chart-grid line{stroke:var(--mist);stroke-width:1px}.chart-tick{font-family:var(--ui);fill:var(--slate);text-anchor:end;dominant-baseline:middle;font-variant-numeric:tabular-nums;font-size:11px}.chart-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--accent);stroke:var(--paper);stroke-width:2px}.chart-date{font-family:var(--ui);fill:var(--slate);font-size:11px}.chart-date-first{text-anchor:start}.chart-date-last{text-anchor:end}.chart-endpoint{font-family:var(--ui);fill:var(--ink);dominant-baseline:middle;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}#screen-welcome{max-width:var(--page-wide);margin-inline:auto}.welcome-head{margin:var(--space-4xl) 0 var(--space-3xl);text-align:center}.welcome-head h2{margin:0 0 var(--space-md);font-family:var(--serif);font-size:var(--type-heading);color:var(--ink);font-weight:400}.welcome-sub{max-width:34rem;font-size:var(--type-aside);color:var(--slate);margin:0 auto;line-height:1.6}.welcome-note{margin:var(--space-4xl) 0;font-size:var(--type-aside);text-align:center;color:var(--slate)}.welcome-resume{gap:var(--space-md);width:100%;margin-bottom:var(--space-2xl);padding:var(--space-md) var(--space-lg);font:inherit;text-align:left;background:var(--accent-wash);border:var(--hairline) solid transparent;border-radius:var(--radius);cursor:pointer;align-items:baseline;display:flex}.welcome-resume:hover{border-color:var(--hover-edge);color:var(--hover-ink)}.welcome-resume-label{font-size:var(--type-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);flex:none;font-weight:600}.welcome-resume-title{font-size:var(--type-body);color:var(--ink)}.welcome-resume-chapter{color:var(--slate)}.welcome-shelf{--shelf-reserve:26rem;--cover-w:calc((100dvh - var(--shelf-reserve)) * 2 / 3);max-width:min(100%, calc(6 * var(--cover-w) + 5 * var(--space-xl)));gap:var(--space-2xl) var(--space-xl);margin-inline:auto;grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}@media (width<=50em){.welcome-shelf{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=30em){.welcome-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}}.welcome-book{gap:var(--space-xs);width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;padding:0;display:flex}.welcome-book-title{margin-top:var(--space-sm);font-size:var(--type-aside);color:var(--ink);line-height:1.3}.welcome-book-author{font-size:var(--type-micro);color:var(--slate)}.welcome-book:hover .cover{box-shadow:var(--lift);transform:translateY(-2px)}.welcome-book:hover .welcome-book-title{color:var(--hover-ink)}.cover{aspect-ratio:2/3;background:var(--panel);border-radius:var(--radius-sm);transition:transform var(--travel), box-shadow var(--travel);position:relative;overflow:hidden}.cover-art{object-fit:cover;width:100%;height:100%;display:block}.cover-drawn{gap:var(--space-sm);width:100%;height:100%;padding:var(--space-lg);text-align:center;border:var(--hairline) solid var(--mist);border-radius:var(--radius-sm);flex-direction:column;justify-content:center;align-items:center;display:flex}.cover-title{font-family:var(--serif);font-size:var(--type-body);color:var(--ink);line-height:1.25}.cover-rule{border-top:var(--hairline) solid var(--mist);width:2rem}.cover-author{font-size:var(--type-micro);color:var(--slate);line-height:1.3}.cover-mark{right:var(--space-sm);bottom:var(--space-xs);font-size:var(--type-label);color:var(--mist);position:absolute}@media (width<=105em){.shortcuts{display:none}}@media (width<=72em){.dock{display:none}}@media (width<=52em){.masthead-tabs,.masthead-account,.masthead-settings{display:none}.masthead-burger{display:inline-block}.masthead:has(.masthead-hud:not([hidden])) .wordmark{display:none}}@media (width<=74em){.masthead-progress{display:none}}@media (width<=42em){.keyboard{display:none}}
