:root{--bg:#d6cdb1;--panel:#f4efe0;--stone:#ddd4ba;--stone-lit:#e7dfc7;--border:#c2b89b;--text:#5c5340;--text-h:#2e2a20;--dim:#a4997c;--accent:#8a3324;--accent-bg:#8a33241a;--accent-border:#8a332473;--ok:#4f6147;--warn:#a32d2d;--code-bg:#e9e1c9;--social-bg:#e9e1c980;--shadow:#5d543c59 0 10px 15px -3px, #5d543c33 0 4px 6px -2px;--neu-up:-6px -6px 14px #fffceeb3, 6px 6px 14px #5d543c59;--neu-in:inset 4px 4px 10px #5d543c52, inset -4px -4px 10px #fffaebbf;--serif:"Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans:"Shippori Mincho", "Hiragino Mincho ProN", system-ui, serif;--heading:"Shippori Mincho", "Hiragino Mincho ProN", serif;--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}body{margin:0}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.is-playing,.is-playing *{filter:drop-shadow(0 0 4px #dc2626cc);fill:#dc2626!important;stroke:#dc2626!important}.measure-highlight-rect{pointer-events:none}.measure-hit{pointer-events:all;cursor:pointer}[data-testid=score-container] .vf-modifiers text{display:none}.bp-marker{transition:fill .12s,r .12s}.bp-marker:hover{fill:#f55}.bp-marker.is-set{filter:drop-shadow(0 0 4px #ff5555b3)}.is-selected-note{filter:drop-shadow(0 0 2px #fffffff2)drop-shadow(0 0 7px #ffffff8c)}.is-acc-anchor{filter:drop-shadow(0 0 3px #ffb86c)drop-shadow(0 0 7px #ffb86ce6)}.is-acc-scope{filter:drop-shadow(0 0 4px #ffb86ca6)}.sd-btn{border:1px solid var(--border);min-height:36px;box-shadow:var(--neu-up);color:var(--text-h);font:inherit;cursor:pointer;white-space:nowrap;background:linear-gradient(#fffdf6,#f6f1e4);border-radius:8px;padding:.35em 1em}.sd-btn:hover:not(:disabled){transform:translateY(-1px)}.sd-btn:active:not(:disabled){box-shadow:var(--neu-in);transform:translateY(1px)}.sd-btn:disabled{opacity:.45;cursor:default}.sd-btn[aria-pressed=true],.sd-btn.is-on{box-shadow:var(--neu-in);color:var(--accent);font-weight:700}.sd-btn:focus-visible,.sd-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[data-testid=control-strip]{font-size:.85em}[data-testid=control-strip] .sd-btn{min-height:28px;padding:.2em .65em}[data-testid=control-strip] .sd-select{min-height:26px;padding:.15em .4em}.sd-select{border:1px solid var(--border);background:var(--panel);min-height:32px;color:var(--text-h);font:inherit;cursor:pointer;border-radius:8px;padding:.25em .6em}[data-testid=reader-header] .sd-btn,[data-testid=control-strip] .sd-btn,[data-testid=control-strip] .sd-select{border-radius:999px;min-height:28px;padding:.15em .7em;font-size:.82em}.toc{background:#221f18;border-radius:20px;margin-top:24px;padding:20px 22px;box-shadow:6px 6px 16px #5d543c4d}.toc-label{font-family:var(--mono);letter-spacing:.28em;color:#c98a5e;padding-left:12px;font-size:10px}.toc-list{margin:12px 0 0;padding:0;list-style:none}.toc-link{color:#cfc5a9;cursor:pointer;background:#2e2a20;border-radius:10px;align-items:baseline;gap:14px;padding:9px 12px;font-size:13.5px;text-decoration:none;transition:background .12s,color .12s;display:flex}.toc-list li+li{margin-top:6px}.toc-num{font-family:var(--mono);color:#c98a5e;flex:none;font-size:11px}.toc-arrow{opacity:0;color:#c98a5e;margin-left:auto;transition:opacity .12s,transform .12s;transform:translate(-4px)}.toc-link:hover,.toc-link:focus-visible{color:#f5ecd6;background:#453f31}.toc-link:hover .toc-arrow,.toc-link:focus-visible .toc-arrow{opacity:1;transform:translate(0)}.toc-link:focus-visible{outline-offset:2px;outline:2px solid #c98a5e}.toc-link:active{background:#56503f}.back-to-top{z-index:5;color:#c98a5e;cursor:pointer;background:#221f18;border:none;border-radius:50%;width:46px;height:46px;font-size:18px;line-height:1;transition:background .12s,transform .12s,opacity .16s;position:fixed;bottom:28px;right:28px;box-shadow:4px 4px 12px #3a342873}.back-to-top.is-away{visibility:hidden;opacity:0;pointer-events:none}.back-to-top:hover{color:#f5ecd6;background:#453f31;transform:translateY(-2px)}.back-to-top:active{transform:translateY(1px)}.back-to-top:focus-visible{outline-offset:3px;outline:2px solid #c98a5e}.tutorial-wrap{text-align:left;align-items:flex-start;gap:34px;max-width:1288px;margin:0 auto;padding:56px 44px 96px;display:flex}.tutorial-body{flex:1;min-width:0;max-width:880px}.toc-rail{box-sizing:border-box;background:#221f18;border-radius:18px;flex:none;width:286px;padding:18px 12px;position:sticky;top:14px;box-shadow:5px 5px 14px #5d543c47}.toc-rail .toc-link{padding:8px 10px;font-size:12.5px;line-height:1.5}.toc-link.is-current{color:#f5ecd6;background:#453f31;box-shadow:inset 3px 0 #c98a5e}@media (width<=1099px){.toc-rail{display:none}.tutorial-wrap{padding:56px 24px 96px}}@media (width>=1100px){.toc{display:none}}
