.option-overlay[data-v-1402730e]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:2147483647;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box}.option-window[data-v-1402730e]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;min-width:380px;max-width:480px;max-height:calc(100vh - 4rem);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px #00000080}.dialog-header[data-v-1402730e]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.dialog-header h3[data-v-1402730e]{margin:0;font-size:1.1rem}.dialog-close[data-v-1402730e]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem}.dialog-close[data-v-1402730e]:hover{color:var(--text)}.dialog-body[data-v-1402730e]{padding:1.25rem;overflow-y:auto}.option-section[data-v-1402730e]{margin-bottom:1.25rem}.option-section h4[data-v-1402730e]{font-size:.8125rem;margin:0 0 .5rem;color:var(--text-muted)}.option-hint[data-v-1402730e]{font-size:.75rem;color:var(--text-muted);margin:.35rem 0 .5rem}.option-input[data-v-1402730e]{width:100%;padding:.4rem .5rem;font-size:.9375rem;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.font-select-row[data-v-1402730e]{margin:.5rem 0}.font-select[data-v-1402730e]{width:100%;padding:.5rem;font-size:.9375rem;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.option-input-number[data-v-1402730e]{width:6em}.option-actions[data-v-1402730e]{margin-top:1rem}.btn-apply[data-v-1402730e]{padding:.5rem 1.25rem;font-size:.9375rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer}.btn-apply[data-v-1402730e]:hover{opacity:.95}.tutorial-overlay[data-v-f134ff2e]{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:2147483647;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box;cursor:pointer}.tutorial-window[data-v-f134ff2e]{cursor:default}.tutorial-window[data-v-f134ff2e]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;width:80vw;max-width:calc(100vw - 2rem);max-height:calc(100vh - 4rem);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px #00000080}.dialog-header[data-v-f134ff2e]{display:flex;align-items:flex-start;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.tutorial-title[data-v-f134ff2e]{margin:0;font-size:1.25rem;font-weight:700;color:var(--text);line-height:1.3}.dialog-close[data-v-f134ff2e]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem;flex-shrink:0;margin-left:.5rem}.dialog-close[data-v-f134ff2e]:hover{color:var(--text)}.dialog-body[data-v-f134ff2e]{padding:1.25rem 1.5rem;overflow-y:auto}.tutorial-intro[data-v-f134ff2e]{font-size:.9375rem;color:var(--text-muted);margin:0 0 .75rem;line-height:1.5}.tutorial-section[data-v-f134ff2e]{margin-bottom:1.5rem}.section-label[data-v-f134ff2e]{font-size:.8125rem;font-weight:600;color:var(--text-muted);margin:0 0 .5rem}.tutorial-pre[data-v-f134ff2e]{font-size:.8125rem;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.75rem 1rem;margin:0 0 .5rem;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.tutorial-rendered[data-v-f134ff2e]{font-family:var(--content-font-family);font-size:var(--content-font-size);color:var(--text);line-height:1.7;padding:.75rem 1rem;background:var(--main-bg);border:1px solid var(--border);border-radius:6px}.tutorial-block[data-v-f134ff2e]{margin-bottom:2rem}.tutorial-block[data-v-f134ff2e]:last-child{margin-bottom:0}.tutorial-block-title[data-v-f134ff2e]{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 .75rem;padding-bottom:.35rem;border-bottom:1px solid var(--border)}.tutorial-text-item[data-v-f134ff2e]{margin-bottom:1.25rem}.tutorial-text-item[data-v-f134ff2e]:last-child{margin-bottom:0}.tutorial-text-body[data-v-f134ff2e]{font-size:.9375rem;color:var(--text-muted);margin:0;line-height:1.5}.tutorial-rendered[data-v-f134ff2e] h1{position:relative;font-size:1.65rem;margin:1rem 0 .75rem;padding:.35rem 0 .75rem;border:none;font-weight:600}.tutorial-rendered[data-v-f134ff2e] h1:after{content:"";position:absolute;left:0;bottom:20%;width:100%;height:7px;background:repeating-linear-gradient(-45deg,var(--heading-h1-stripe),var(--heading-h1-stripe) 2px,var(--heading-h1-stripe-alt) 2px,var(--heading-h1-stripe-alt) 4px)}.tutorial-rendered[data-v-f134ff2e] h2{font-size:1.3rem;margin:1rem 0 .5rem;padding:.1em .15em .05em;color:var(--text);font-weight:600;background:linear-gradient(transparent 70%,var(--heading-h2-marker) 70%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.tutorial-rendered[data-v-f134ff2e] .book-h3{position:relative;display:flex;align-items:center;justify-content:flex-start;font-size:1.1rem;margin:.75rem 0 .5rem;padding:.15em 1.7em;min-height:1.35em;gap:0;font-weight:600}.tutorial-rendered[data-v-f134ff2e] .book-h3-text{flex-shrink:0;position:relative;z-index:1}.tutorial-rendered[data-v-f134ff2e] .book-h3-line{display:none}.tutorial-rendered[data-v-f134ff2e] .book-h3:before,.tutorial-rendered[data-v-f134ff2e] .book-h3:after{content:"";position:absolute;top:50%;width:1.45em;height:.1em;background-color:var(--text);transform:translateY(-50%) rotate(-60deg)}.tutorial-rendered[data-v-f134ff2e] .book-h3:before{left:0}.tutorial-rendered[data-v-f134ff2e] .book-h3:after{right:0}.tutorial-rendered[data-v-f134ff2e] h4{position:relative;display:inline-block;font-size:.95rem;margin:.75rem 0 1.15rem;padding-bottom:.35rem;font-weight:600;border:none}.tutorial-rendered[data-v-f134ff2e] h4:before{content:"";position:absolute;bottom:20%;left:0;width:60px;height:1px;background-color:var(--text);border-radius:0}.tutorial-rendered[data-v-f134ff2e] ul{margin:.5rem 0;padding-left:1.5rem}.tutorial-rendered[data-v-f134ff2e] li{margin:.25rem 0}.tutorial-rendered[data-v-f134ff2e] hr{border:none;border-top:1px solid var(--border);margin:1rem 0}.tutorial-rendered[data-v-f134ff2e] a{color:var(--accent);text-decoration:none}.tutorial-rendered[data-v-f134ff2e] a:hover{text-decoration:underline}.tutorial-rendered[data-v-f134ff2e] .book-table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.75rem 0;font-size:.9375rem}.tutorial-rendered[data-v-f134ff2e] .book-table td{border:1px solid var(--border);padding:.35rem .6rem}.tutorial-rendered[data-v-f134ff2e] .book-split{margin:.75rem 0;max-width:100%;box-sizing:border-box}.tutorial-rendered[data-v-f134ff2e] .book-split-cell{min-width:0;line-height:1.6;padding:.5rem .75rem;border-right:1px solid var(--border);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.tutorial-rendered[data-v-f134ff2e] .book-split-cols-2 .book-split-cell:nth-child(2n),.tutorial-rendered[data-v-f134ff2e] .book-split-cols-3 .book-split-cell:nth-child(3n),.tutorial-rendered[data-v-f134ff2e] .book-split-cols-4 .book-split-cell:nth-child(4n),.tutorial-rendered[data-v-f134ff2e] .book-split-cols-5 .book-split-cell:nth-child(5n){border-right:none}.tutorial-rendered[data-v-f134ff2e] .redaction{color:var(--main-bg);background-color:var(--main-bg);border:1px dashed var(--text-muted);border-radius:3px;padding:0 2px;cursor:pointer;transition:color .15s,background-color .15s,border-color .15s}.tutorial-rendered[data-v-f134ff2e] .redaction.revealed{color:inherit;background-color:transparent;border-color:transparent}.tutorial-rendered[data-v-f134ff2e] .balloon-trigger{cursor:pointer;border-bottom:1px dotted var(--accent);position:relative}.tutorial-rendered[data-v-f134ff2e] .balloon-trigger:hover:after{content:attr(data-balloon);position:absolute;left:50%;bottom:100%;transform:translate(-50%);margin-bottom:4px;padding:.35rem .6rem;font-size:.875rem;width:max-content;max-width:20em;white-space:normal;word-break:normal;overflow-wrap:break-word;background:var(--nav-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0003;z-index:10}.tutorial-rendered[data-v-f134ff2e] .segment-code,.tutorial-rendered[data-v-f134ff2e] pre{margin:.75rem 0;background:var(--code-bg);border-radius:6px;padding:1rem;font-size:.875rem}.tutorial-rendered[data-v-f134ff2e] .segment-code code,.tutorial-rendered[data-v-f134ff2e] pre code{font-family:Consolas,Monaco,monospace;color:var(--code-fg)}.ai-tutorial-overlay[data-v-e0a617a9]{position:fixed;inset:0;z-index:2147483647;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box;cursor:pointer}.ai-tutorial-overlay[data-v-e0a617a9]:has(.ai-tutorial-window--phone){padding:.5rem;align-items:stretch}.ai-tutorial-window[data-v-e0a617a9]{cursor:default;background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;width:80vw;max-width:calc(100vw - 2rem);max-height:calc(100vh - 4rem);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px #00000080}.ai-tutorial-window--phone[data-v-e0a617a9]{width:100%;max-width:min(430px,100vw - 1rem);max-height:min(88vh,100dvh - 1rem);margin:auto;border-radius:10px}.ai-tutorial-window--phone .ai-tutorial-header[data-v-e0a617a9]{padding:.65rem .85rem}.ai-tutorial-window--phone .ai-tutorial-title[data-v-e0a617a9]{font-size:1rem}.ai-tutorial-window--phone .ai-tutorial-intro[data-v-e0a617a9]{padding:.6rem .85rem;font-size:.8rem}.ai-tutorial-window--phone .ai-tutorial-body[data-v-e0a617a9]{padding:.65rem .85rem .85rem;gap:.65rem}.ai-tutorial-window--phone .ai-tutorial-field--grow[data-v-e0a617a9]{min-height:8rem}.ai-tutorial-window--phone .ai-tutorial-textarea[data-v-e0a617a9]{min-height:7rem;font-size:.75rem}.ai-tutorial-header[data-v-e0a617a9]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);flex-shrink:0}.ai-tutorial-title[data-v-e0a617a9]{margin:0;font-size:1.2rem;font-weight:600;color:var(--text)}.dialog-close[data-v-e0a617a9]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem}.dialog-close[data-v-e0a617a9]:hover{color:var(--text)}.ai-tutorial-intro[data-v-e0a617a9]{font-size:.875rem;color:var(--text-muted);margin:0;padding:1rem 1.25rem;border-bottom:1px solid var(--border);line-height:1.5;flex-shrink:0}.ai-tutorial-body[data-v-e0a617a9]{padding:1rem 1.25rem 1.25rem;overflow:hidden;display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0}.ai-tutorial-field[data-v-e0a617a9]{flex-shrink:0}.ai-tutorial-field--grow[data-v-e0a617a9]{flex:1;min-height:12rem;display:flex;flex-direction:column;gap:.35rem}.ai-tutorial-label[data-v-e0a617a9]{display:block;font-size:.8125rem;font-weight:600;color:var(--text-muted);margin-bottom:.35rem}.ai-tutorial-select[data-v-e0a617a9],.ai-tutorial-input[data-v-e0a617a9]{width:100%;max-width:100%;box-sizing:border-box;padding:.5rem .65rem;font-size:.9375rem;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px}.ai-tutorial-select[data-v-e0a617a9]{cursor:pointer}.ai-tutorial-input[data-v-e0a617a9]::placeholder{color:var(--text-muted);opacity:.85}.ai-tutorial-prompt-head[data-v-e0a617a9]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.ai-tutorial-prompt-head .ai-tutorial-label[data-v-e0a617a9]{margin-bottom:0}.ai-tutorial-copy-btn[data-v-e0a617a9]{padding:.35rem .75rem;font-size:.8125rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer;flex-shrink:0}.ai-tutorial-copy-btn[data-v-e0a617a9]:hover{opacity:.95}.ai-tutorial-textarea[data-v-e0a617a9]{flex:1;min-height:10rem;width:100%;box-sizing:border-box;padding:.75rem 1rem;font-size:.8125rem;font-family:Consolas,Monaco,Courier New,monospace;line-height:1.5;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;resize:vertical;cursor:default}.ai-tutorial-textarea[data-v-e0a617a9]:focus{outline:none;border-color:var(--accent)}.bookshelf-overlay[data-v-13eace30]{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:1rem}.bookshelf-modal[data-v-13eace30]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;max-width:min(1100px,92vw);width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 12px 40px #0006}.bookshelf-header[data-v-13eace30]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border)}.bookshelf-title[data-v-13eace30]{margin:0;font-size:1rem}.bookshelf-close[data-v-13eace30]{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;line-height:1}.bookshelf-close[data-v-13eace30]:hover{color:var(--text)}.bookshelf-body[data-v-13eace30]{padding:1rem;overflow:auto;flex:1;min-height:200px}.bookshelf-error[data-v-13eace30]{color:#f87171;font-size:.875rem;margin:0 0 .5rem}.bookshelf-search-wrap[data-v-13eace30],.bookshelf-tag-filter-wrap[data-v-13eace30]{margin-bottom:.75rem}.bookshelf-tag-filter-label[data-v-13eace30]{display:block;font-size:.8125rem;font-weight:600;color:var(--text-muted);margin-bottom:.35rem}.bookshelf-tag-filter-select[data-v-13eace30]{width:100%;padding:.45rem .55rem;font-size:.9375rem;background:var(--main-bg, rgba(15, 23, 42, .9));color:var(--text);border:1px solid var(--border);border-radius:6px;box-sizing:border-box;cursor:pointer}.bookshelf-tag-filter-select[data-v-13eace30]:focus{outline:none;border-color:var(--accent)}.bookshelf-search[data-v-13eace30]{width:100%;padding:.5rem .6rem;font-size:.9375rem;background:var(--main-bg, rgba(15, 23, 42, .9));color:var(--text);border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.bookshelf-search[data-v-13eace30]:focus{outline:none;border-color:var(--accent)}.bookshelf-loading[data-v-13eace30],.bookshelf-empty[data-v-13eace30]{color:var(--text-muted);font-size:.875rem;margin:0}.bookshelf-list[data-v-13eace30]{list-style:none;padding:0;margin:0}.bookshelf-list-item[data-v-13eace30]{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.6rem .75rem;border-radius:6px;margin-bottom:.25rem;background:rgba(255,255,255,.03);border:1px solid var(--border)}.bookshelf-list-info[data-v-13eace30]{flex:1;min-width:0}.bookshelf-list-name[data-v-13eace30]{font-weight:500;display:block}.bookshelf-list-desc[data-v-13eace30]{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:.2rem}.bookshelf-tags[data-v-13eace30]{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}.bookshelf-tag[data-v-13eace30]{font-size:.75rem;padding:.15rem .45rem;border-radius:999px;background:rgba(56,189,248,.12);border:1px solid var(--border);color:var(--text-muted)}.bookshelf-list-actions[data-v-13eace30]{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.bookshelf-group-select[data-v-13eace30]{padding:.25rem .5rem;font-size:.8125rem;background:var(--main-bg, rgba(15, 23, 42, .9));color:var(--text);border:1px solid var(--border);border-radius:6px;min-width:120px}.bookshelf-import-btn[data-v-13eace30]{padding:.25rem .6rem;font-size:.8125rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer}.bookshelf-import-btn[data-v-13eace30]:hover:not(:disabled){opacity:.9}.bookshelf-import-btn[data-v-13eace30]:disabled{opacity:.6;cursor:not-allowed}.features-overlay[data-v-2ab41b46]{position:fixed;inset:0;z-index:2147483647;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box;cursor:pointer}.features-window[data-v-2ab41b46]{cursor:default;background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;width:80vw;max-width:calc(100vw - 2rem);max-height:calc(100vh - 4rem);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px #00000080}.dialog-header[data-v-2ab41b46]{display:flex;align-items:flex-start;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);flex-shrink:0}.features-title[data-v-2ab41b46]{margin:0;font-size:1.25rem;font-weight:700;color:var(--text);line-height:1.3}.dialog-close[data-v-2ab41b46]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem;flex-shrink:0;margin-left:.5rem}.dialog-close[data-v-2ab41b46]:hover{color:var(--text)}.dialog-body[data-v-2ab41b46]{padding:1.25rem 1.5rem;overflow-y:auto}.features-list[data-v-2ab41b46]{margin:0;padding-left:1.25rem;font-size:.9375rem;color:var(--text-muted);line-height:1.6}.features-list li[data-v-2ab41b46]{margin-bottom:.75rem}.features-list li[data-v-2ab41b46]:last-child{margin-bottom:0}.features-list strong[data-v-2ab41b46]{color:var(--text)}.features-inline-code[data-v-2ab41b46]{font-size:.85em;background:var(--code-bg);border:1px solid var(--border);border-radius:4px;padding:.1em .35em}.phone-app-root[data-v-4d3be890]{min-height:100vh;touch-action:manipulation}.app-layout[data-v-4d3be890]{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-menubar[data-v-4d3be890]{flex-shrink:0;background:var(--nav-bg);border-bottom:1px solid var(--border)}.menubar-inner[data-v-4d3be890]{padding:.35rem .75rem;display:flex;align-items:center;gap:.5rem}.menubar-left[data-v-4d3be890]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.menubar-right[data-v-4d3be890]{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex-shrink:0}.menubar-inpage-search[data-v-4d3be890]{display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0}.menubar-inpage-search-input[data-v-4d3be890]{width:10rem;max-width:22vw;padding:.3rem .5rem;font-size:.8125rem;color:var(--text);background:var(--code-bg);border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.menubar-inpage-search-input[data-v-4d3be890]::placeholder{color:var(--text-muted)}.menubar-inpage-search-input[data-v-4d3be890]:focus{outline:none;border-color:var(--accent)}.menubar-inpage-search-btn[data-v-4d3be890]{display:inline-flex;align-items:center;justify-content:center;padding:.3rem;color:var(--text-muted);background:var(--nav-hover);border:1px solid var(--border);border-radius:6px;cursor:pointer}.menubar-inpage-search-btn[data-v-4d3be890]:hover{color:var(--text);background:var(--border)}.menubar-inpage-search-icon[data-v-4d3be890]{width:1.1rem;height:1.1rem;display:block}.menubar-file-wrap[data-v-4d3be890]{position:relative}.menubar-dropdown[data-v-4d3be890]{position:absolute;left:0;top:100%;margin-top:2px;min-width:12rem;background:var(--nav-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #00000026;padding:.25rem 0;z-index:100}.menubar-dropdown-item[data-v-4d3be890]{display:block;width:100%;padding:.35rem .75rem;text-align:left;font-size:.875rem;background:none;border:none;color:var(--text);cursor:pointer}.menubar-dropdown-item[data-v-4d3be890]:hover:not(:disabled){background:var(--nav-hover)}.menubar-dropdown-item[data-v-4d3be890]:disabled{opacity:.5;cursor:not-allowed}.menubar-dropdown-overlay[data-v-4d3be890]{position:fixed;inset:0;z-index:99}.hidden-file-input[data-v-4d3be890]{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.menubar-item[data-v-4d3be890]{padding:.35rem .6rem;font-size:.875rem;color:var(--text);background:transparent;border:none;border-radius:4px;cursor:pointer}.menubar-item[data-v-4d3be890]:hover{background:var(--nav-hover)}.app-body[data-v-4d3be890]{flex:1;display:flex;min-height:0;overflow:hidden}.nav-pane[data-v-4d3be890]{width:260px;min-width:260px;min-height:0;flex-shrink:0;background:var(--nav-bg);border-right:1px solid var(--border);overflow-x:hidden;overflow-y:auto}.nav-inner[data-v-4d3be890]{padding:1rem .75rem}.nav-search-row[data-v-4d3be890]{display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}.nav-search-input[data-v-4d3be890]{flex:1;min-width:0;padding:.35rem .5rem;font-size:.8125rem;color:var(--text);background:var(--nav-hover, rgba(255, 255, 255, .06));border:1px solid var(--border);border-radius:6px}.nav-search-input[data-v-4d3be890]::placeholder{color:var(--text-muted)}.nav-search-btn[data-v-4d3be890]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;background:var(--nav-hover, rgba(255, 255, 255, .06));border:1px solid var(--border);border-radius:6px;color:var(--text-muted);cursor:pointer}.nav-search-btn[data-v-4d3be890]:hover{color:var(--accent);background:var(--border)}.nav-search-icon[data-v-4d3be890]{width:1rem;height:1rem}.nav-search-dot[data-v-4d3be890]{display:inline-block;width:6px;height:6px;margin-right:.35rem;border-radius:50%;background:#f87171;vertical-align:.15em}.nav-top-actions[data-v-4d3be890]{margin-bottom:.75rem}.group-pad-first[data-v-4d3be890],.group-pad[data-v-4d3be890],.group-pad-last[data-v-4d3be890]{height:4px;min-height:4px;margin:0;transition:background .15s}.group-pad-first.nav-drag-over[data-v-4d3be890],.group-pad.nav-drag-over[data-v-4d3be890],.group-pad-last.nav-drag-over[data-v-4d3be890]{background:var(--accent);opacity:.5;border-radius:2px}.group-head[data-v-4d3be890]{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;margin-top:.5rem;font-size:.9375rem;color:var(--text);cursor:default;border-radius:6px}.group-head[data-v-4d3be890]:first-of-type{margin-top:0}.group-head-name[data-v-4d3be890]{flex:1;min-width:0;cursor:pointer;padding:.2rem 0}.group-head-name[data-v-4d3be890]:hover{color:var(--accent)}.group-head-name--edit[data-v-4d3be890]{outline:1px solid var(--accent);outline-offset:2px;border-radius:4px;padding:.2rem .35rem}.group-head-trigger[data-v-4d3be890]{flex-shrink:0;padding:.2rem .4rem;color:var(--text-muted);cursor:pointer;border-radius:4px}.group-head-trigger[data-v-4d3be890]:hover{color:var(--accent);background:var(--nav-hover)}.group-items[data-v-4d3be890]{padding-left:.75rem;border-left:1px solid var(--border);margin-left:.5rem}.item-slot[data-v-4d3be890]{height:3px;min-height:3px;margin:0;transition:background .15s}.item-slot.nav-drag-over[data-v-4d3be890]{background:var(--accent);opacity:.5;border-radius:2px}.item-slot--last[data-v-4d3be890]{margin-bottom:.25rem}.nav-item-row[data-v-4d3be890]{display:flex;align-items:center;gap:2px;margin:2px 0}.nav-item[data-v-4d3be890]{flex:1;padding:.4rem .6rem;text-align:left;font-size:.875rem;color:var(--text);background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background .15s,color .15s;min-width:0}.nav-item[data-v-4d3be890]:hover{background:var(--nav-hover)}.nav-item.active[data-v-4d3be890]{background:var(--nav-active);color:var(--accent);font-weight:500}.nav-item--edit[data-v-4d3be890]{outline:1px solid var(--accent);outline-offset:1px;border-radius:4px}.nav-item-trigger[data-v-4d3be890]{flex-shrink:0;padding:.2rem .35rem;color:var(--text-muted);cursor:pointer;border-radius:4px}.nav-item-trigger[data-v-4d3be890]:hover{color:var(--accent);background:var(--nav-hover)}.group-context-menu[data-v-4d3be890]{position:fixed;z-index:9999;display:flex;align-items:center;gap:.25rem;padding:.25rem .35rem;background:var(--nav-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0003}.group-context-menu.file-context-menu[data-v-4d3be890]{align-items:stretch}.group-context-spacer[data-v-4d3be890]{min-width:1.5rem;margin:0 .25rem}.group-context-btn[data-v-4d3be890]{padding:.25rem .5rem;font-size:.8125rem;background:transparent;border:none;color:var(--text);cursor:pointer;border-radius:4px}.group-context-btn[data-v-4d3be890]:hover{background:var(--nav-hover)}.group-context-btn--sub[data-v-4d3be890]{position:relative}.context-move-wrap[data-v-4d3be890]{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start}.context-move-wrap .group-context-btn--label[data-v-4d3be890]{cursor:default;padding:.25rem .5rem}.context-submenu[data-v-4d3be890]{position:absolute;left:100%;top:0;margin-left:2px;min-width:10rem;background:var(--nav-bg);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0003;padding:.25rem 0;z-index:10000}.context-submenu--below[data-v-4d3be890]{left:0;top:100%;margin-left:0;margin-top:2px}.context-submenu--groups[data-v-4d3be890]{display:flex;flex-direction:column;padding:.2rem 0}.group-context-spacer--before-delete[data-v-4d3be890]{min-width:.75rem}.context-submenu-item[data-v-4d3be890]{display:block;width:100%;padding:.35rem .6rem;text-align:left;font-size:.8125rem;background:none;border:none;color:var(--text);cursor:pointer}.context-submenu-item[data-v-4d3be890]:hover{background:var(--nav-hover)}.context-submenu-item--current[data-v-4d3be890]{color:var(--text-muted)}.group-context-sep[data-v-4d3be890]{color:var(--text-muted);font-size:.75rem;user-select:none}.nav-menu-enter-active[data-v-4d3be890],.nav-menu-leave-active[data-v-4d3be890]{transition:opacity .12s ease,transform .12s ease}.nav-menu-enter-from[data-v-4d3be890],.nav-menu-leave-to[data-v-4d3be890]{opacity:0;transform:translateY(-4px)}.nav-add-btn[data-v-4d3be890]{padding:.4rem .75rem;font-size:.8125rem;background:var(--nav-hover);color:var(--text-muted);border:none;border-radius:6px;cursor:pointer;text-align:left}.nav-add-btn[data-v-4d3be890]:hover{background:var(--border);color:var(--text)}.main-pane[data-v-4d3be890]{flex:1;min-height:0;overflow-y:auto;background:var(--main-bg);font-family:var(--content-font-family);font-size:var(--content-font-size)}.import-overlay[data-v-4d3be890]{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box}.import-window[data-v-4d3be890]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;min-width:360px;max-width:420px;box-shadow:0 12px 40px #0000004d;display:flex;flex-direction:column}.import-header[data-v-4d3be890]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.import-header h3[data-v-4d3be890]{margin:0;font-size:1.1rem}.import-header .dialog-close[data-v-4d3be890]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem}.import-header .dialog-close[data-v-4d3be890]:hover{color:var(--text)}.import-body[data-v-4d3be890]{padding:1.25rem}.import-hint[data-v-4d3be890]{font-size:.8125rem;color:var(--text-muted);margin:0 0 .75rem}.import-section[data-v-4d3be890]{margin-bottom:1rem}.import-section[data-v-4d3be890]:last-of-type{margin-bottom:0}.import-label[data-v-4d3be890]{display:block;font-size:.8125rem;color:var(--text-muted);margin-bottom:.35rem}.import-select[data-v-4d3be890],.import-input[data-v-4d3be890]{width:100%;padding:.5rem .6rem;font-size:.9375rem;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.import-select[data-v-4d3be890]:disabled{opacity:.7;cursor:not-allowed}.import-no-groups[data-v-4d3be890]{font-size:.8125rem;color:var(--text-muted);margin:.35rem 0 0}.import-actions[data-v-4d3be890]{display:flex;gap:.5rem;padding:1rem 1.25rem;border-top:1px solid var(--border)}.import-actions .btn-apply[data-v-4d3be890]{padding:.4rem 1rem}.import-actions .btn-apply[data-v-4d3be890]:disabled{opacity:.5;cursor:not-allowed}.import-actions .btn-cancel[data-v-4d3be890]{padding:.4rem 1rem;font-size:.875rem;background:var(--nav-hover);color:var(--text);border:none;border-radius:6px;cursor:pointer}.import-actions .btn-cancel[data-v-4d3be890]:hover{background:var(--border)}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.content-renderer[data-v-17ed85f9]{line-height:1.7}.segment-html[data-v-17ed85f9] h1{position:relative;font-size:1.65rem;margin:1rem 0 .75rem;padding:.35rem 0 .75rem;border:none;font-weight:600}.segment-html[data-v-17ed85f9] h1:after{content:"";position:absolute;left:0;bottom:20%;width:100%;height:7px;background:repeating-linear-gradient(-45deg,var(--heading-h1-stripe),var(--heading-h1-stripe) 2px,var(--heading-h1-stripe-alt) 2px,var(--heading-h1-stripe-alt) 4px)}.segment-html[data-v-17ed85f9] h2{font-size:1.3rem;margin:1rem 0 .5rem;padding:.1em .15em .05em;color:var(--text);font-weight:600;background:linear-gradient(transparent 70%,var(--heading-h2-marker) 70%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.segment-html[data-v-17ed85f9] .book-h3{position:relative;display:flex;align-items:center;justify-content:flex-start;font-size:1.1rem;margin:.75rem 0 .5rem;padding:.15em 1.7em;min-height:1.35em;gap:0;font-weight:600}.segment-html[data-v-17ed85f9] .book-h3-text{flex-shrink:0;position:relative;z-index:1}.segment-html[data-v-17ed85f9] .book-h3-line{display:none}.segment-html[data-v-17ed85f9] .book-h3:before,.segment-html[data-v-17ed85f9] .book-h3:after{content:"";position:absolute;top:50%;width:1.45em;height:.1em;background-color:var(--text);transform:translateY(-50%) rotate(-60deg)}.segment-html[data-v-17ed85f9] .book-h3:before{left:0}.segment-html[data-v-17ed85f9] .book-h3:after{right:0}.segment-html[data-v-17ed85f9] h4{position:relative;display:inline-block;font-size:.95rem;margin:.75rem 0 1.15rem;padding-bottom:.35rem;font-weight:600;border:none}.segment-html[data-v-17ed85f9] h4:before{content:"";position:absolute;bottom:20%;left:0;width:60px;height:1px;background-color:var(--text);border-radius:0}.segment-html[data-v-17ed85f9] .toc-flash{animation:toc-flash-17ed85f9 .8s ease}@keyframes toc-flash-17ed85f9{0%{background:rgba(56,189,248,.35);border-radius:4px}to{background:transparent}}.segment-html[data-v-17ed85f9] ul{margin:.5rem 0;padding-left:1.5rem}.segment-html[data-v-17ed85f9] li{margin:.25rem 0}.segment-html[data-v-17ed85f9] hr{border:none;border-top:1px solid var(--border);margin:1rem 0}.segment-html[data-v-17ed85f9] a{color:var(--accent);text-decoration:none}.segment-html[data-v-17ed85f9] a:hover{text-decoration:underline}.segment-html[data-v-17ed85f9] .book-table{border-collapse:collapse;table-layout:fixed;width:100%;margin:.75rem 0;font-size:.9375rem}.segment-html[data-v-17ed85f9] .book-table td{border:1px solid var(--border);padding:.35rem .6rem}.segment-html[data-v-17ed85f9] .book-split{margin:.75rem 0;max-width:100%;box-sizing:border-box}.segment-html[data-v-17ed85f9] .book-split-cell{min-width:0;line-height:1.6;padding:.5rem .75rem;border-right:1px solid var(--border);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.segment-html[data-v-17ed85f9] .book-split-cols-2 .book-split-cell:nth-child(2n),.segment-html[data-v-17ed85f9] .book-split-cols-3 .book-split-cell:nth-child(3n),.segment-html[data-v-17ed85f9] .book-split-cols-4 .book-split-cell:nth-child(4n),.segment-html[data-v-17ed85f9] .book-split-cols-5 .book-split-cell:nth-child(5n){border-right:none}.segment-html[data-v-17ed85f9] .redaction{color:var(--main-bg);background-color:var(--main-bg);border:1px dashed var(--text-muted);border-radius:3px;padding:0 2px;cursor:pointer;transition:color .15s,background-color .15s,border-color .15s}.segment-html[data-v-17ed85f9] .redaction.revealed{color:inherit;background-color:transparent;border-color:transparent}.segment-html[data-v-17ed85f9] .balloon-trigger{cursor:pointer;border-bottom:1px dotted var(--accent);position:relative}.segment-html[data-v-17ed85f9] .balloon-trigger:hover:after{content:attr(data-balloon);position:absolute;left:50%;bottom:100%;transform:translate(-50%);margin-bottom:4px;padding:.35rem .6rem;font-size:.875rem;width:max-content;max-width:20em;white-space:normal;word-break:normal;overflow-wrap:break-word;background:var(--nav-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px #0003;z-index:10;pointer-events:none}.segment-code[data-v-17ed85f9]{margin:.75rem 0;background:var(--code-bg);border-radius:6px;overflow-x:auto}.segment-code pre[data-v-17ed85f9]{margin:0;padding:1rem;font-size:.875rem}.segment-code code[data-v-17ed85f9]{font-family:Consolas,Monaco,monospace}.focus-mode-modal-overlay[data-v-da5adcf1]{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.7);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box}.focus-mode-modal-overlay--phone[data-v-da5adcf1]{z-index:10060;padding:0;align-items:stretch;justify-content:stretch;background:rgba(0,0,0,.82);touch-action:manipulation}.focus-mode-modal[data-v-da5adcf1]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;max-width:80vw;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 12px 40px #0006;outline:none}.focus-mode-modal--phone[data-v-da5adcf1]{max-width:min(430px,100vw);width:100%;min-height:100dvh;max-height:100dvh;height:100dvh;margin:0 auto;border-radius:0;border-left:none;border-right:none;touch-action:manipulation}.focus-mode-modal--phone .focus-mode-modal-hint[data-v-da5adcf1]{font-size:.75rem;padding:.4rem .75rem;line-height:1.45}.focus-mode-modal--phone .focus-mode-modal-body[data-v-da5adcf1]{padding:.35rem .65rem .5rem;-webkit-overflow-scrolling:touch}.focus-mode-phone-bar[data-v-da5adcf1]{display:flex;gap:.5rem;padding:.5rem .65rem calc(.5rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border);flex-shrink:0;background:var(--nav-bg);touch-action:manipulation}.focus-mode-phone-btn[data-v-da5adcf1]{flex:1;padding:.65rem .75rem;font-size:1rem;font-weight:600;font-family:inherit;border-radius:10px;border:1px solid var(--border);background:var(--code-bg);color:var(--text);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.focus-mode-phone-btn--primary[data-v-da5adcf1]{background:var(--accent);color:var(--bg);border-color:transparent}.focus-mode-modal-header[data-v-da5adcf1]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border);flex-shrink:0}.focus-mode-modal-title[data-v-da5adcf1]{margin:0;font-size:1rem}.focus-mode-modal-close[data-v-da5adcf1]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem}.focus-mode-modal-close[data-v-da5adcf1]:hover{color:var(--text)}.focus-mode-modal-hint[data-v-da5adcf1]{margin:0;padding:.35rem 1rem;font-size:.8125rem;color:var(--text-muted);flex-shrink:0}.focus-mode-modal-body[data-v-da5adcf1]{overflow:auto;padding:.5rem 1rem 1rem;flex:1;min-height:0}.focus-mode-block[data-v-da5adcf1]{position:relative;margin:0;min-height:.5em}.focus-mode-block-inner[data-v-da5adcf1]{line-height:1.6;padding:.2em 0}.focus-mode-block-cover[data-v-da5adcf1]{position:absolute;inset:0;background:rgba(255,252,248,.2);pointer-events:none}.focus-mode-block-inner[data-v-da5adcf1] .redaction,.segment-html[data-v-da5adcf1] .redaction{color:var(--main-bg);background-color:var(--main-bg);border:1px dashed var(--text-muted);border-radius:3px;padding:0 2px}.focus-mode-block-inner[data-v-da5adcf1] .redaction.revealed,.segment-html[data-v-da5adcf1] .redaction.revealed{color:inherit;background-color:transparent;border-color:transparent}.focus-mode-block-inner[data-v-da5adcf1] h1,.segment-html[data-v-da5adcf1] h1{position:relative;font-size:1.65rem;margin:1rem 0 .75rem;padding:.35rem 0 .75rem;border:none;font-weight:600;display:block}.focus-mode-block-inner[data-v-da5adcf1] h1:after,.segment-html[data-v-da5adcf1] h1:after{content:"";position:absolute;left:0;bottom:20%;width:100%;height:7px;background:repeating-linear-gradient(-45deg,var(--heading-h1-stripe),var(--heading-h1-stripe) 2px,var(--heading-h1-stripe-alt) 2px,var(--heading-h1-stripe-alt) 4px)}.focus-mode-block-inner[data-v-da5adcf1] h2,.segment-html[data-v-da5adcf1] h2{font-size:1.3rem;margin:1rem 0 .5rem;padding:.1em .15em .05em;color:var(--text);font-weight:600;background:linear-gradient(transparent 70%,var(--heading-h2-marker) 70%);box-decoration-break:clone;-webkit-box-decoration-break:clone;display:block}.focus-mode-block-inner[data-v-da5adcf1] .book-h3,.segment-html[data-v-da5adcf1] .book-h3{position:relative;display:flex;align-items:center;justify-content:flex-start;font-size:1.1rem;margin:.75rem 0 .5rem;padding:.15em 1.7em;min-height:1.35em;gap:0;font-weight:600}.focus-mode-block-inner[data-v-da5adcf1] .book-h3-text,.segment-html[data-v-da5adcf1] .book-h3-text{flex-shrink:0;position:relative;z-index:1}.focus-mode-block-inner[data-v-da5adcf1] .book-h3-line,.segment-html[data-v-da5adcf1] .book-h3-line{display:none}.focus-mode-block-inner[data-v-da5adcf1] .book-h3:before,.focus-mode-block-inner[data-v-da5adcf1] .book-h3:after,.segment-html[data-v-da5adcf1] .book-h3:before,.segment-html[data-v-da5adcf1] .book-h3:after{content:"";position:absolute;top:50%;width:1.45em;height:.1em;background-color:var(--text);transform:translateY(-50%) rotate(-60deg)}.focus-mode-block-inner[data-v-da5adcf1] .book-h3:before,.segment-html[data-v-da5adcf1] .book-h3:before{left:0}.focus-mode-block-inner[data-v-da5adcf1] .book-h3:after,.segment-html[data-v-da5adcf1] .book-h3:after{right:0}.focus-mode-block-inner[data-v-da5adcf1] h4,.segment-html[data-v-da5adcf1] h4{position:relative;display:inline-block;font-size:.95rem;margin:.75rem 0 1.15rem;padding-bottom:.35rem;font-weight:600;border:none}.focus-mode-block-inner[data-v-da5adcf1] h4:before,.segment-html[data-v-da5adcf1] h4:before{content:"";position:absolute;bottom:20%;left:0;width:60px;height:1px;background-color:var(--text);border-radius:0}.focus-mode-block-inner[data-v-da5adcf1] ul,.focus-mode-block-inner[data-v-da5adcf1] li,.segment-html[data-v-da5adcf1] ul,.segment-html[data-v-da5adcf1] li{margin:.2em 0}.focus-mode-block-inner[data-v-da5adcf1] ul,.segment-html[data-v-da5adcf1] ul{padding-left:1em}.focus-mode-block-inner[data-v-da5adcf1] .book-table,.segment-html[data-v-da5adcf1] .book-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:.5em 0;font-size:.9375rem}.focus-mode-block-inner[data-v-da5adcf1] .book-table td,.segment-html[data-v-da5adcf1] .book-table td{border:1px solid var(--border);padding:.35em .5em}.focus-mode-block-inner[data-v-da5adcf1] .book-split,.segment-html[data-v-da5adcf1] .book-split{margin:.5em 0;max-width:100%;box-sizing:border-box}.focus-mode-block-inner[data-v-da5adcf1] .book-split-cell,.segment-html[data-v-da5adcf1] .book-split-cell{min-width:0;line-height:1.6;padding:.5rem .75rem;border-right:1px solid var(--border);overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.focus-mode-block-inner[data-v-da5adcf1] .book-split-cols-2 .book-split-cell:nth-child(2n),.focus-mode-block-inner[data-v-da5adcf1] .book-split-cols-3 .book-split-cell:nth-child(3n),.focus-mode-block-inner[data-v-da5adcf1] .book-split-cols-4 .book-split-cell:nth-child(4n),.focus-mode-block-inner[data-v-da5adcf1] .book-split-cols-5 .book-split-cell:nth-child(5n),.segment-html[data-v-da5adcf1] .book-split-cols-2 .book-split-cell:nth-child(2n),.segment-html[data-v-da5adcf1] .book-split-cols-3 .book-split-cell:nth-child(3n),.segment-html[data-v-da5adcf1] .book-split-cols-4 .book-split-cell:nth-child(4n),.segment-html[data-v-da5adcf1] .book-split-cols-5 .book-split-cell:nth-child(5n){border-right:none}.segment-code[data-v-da5adcf1]{margin:.5em 0}.segment-code pre[data-v-da5adcf1]{margin:0;padding:.75rem;background:var(--code-bg);border-radius:6px;overflow:auto}.segment-code code[data-v-da5adcf1]{font-size:.875rem}.dialog-backdrop[data-v-7e43cde3]{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000}.dialog[data-v-7e43cde3]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;min-width:400px;max-width:90vw;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.dialog[style*=width][data-v-7e43cde3]{min-width:0;max-width:none}.dialog-header[data-v-7e43cde3]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.dialog-header h3[data-v-7e43cde3]{margin:0;font-size:1.1rem}.dialog-close[data-v-7e43cde3]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1}.dialog-body[data-v-7e43cde3]{padding:1.25rem;overflow-y:auto}.test-content[data-v-7e43cde3]{margin-bottom:1rem;line-height:1.6}.test-content.content-rendered[data-v-7e43cde3] h1{position:relative;font-size:1.65rem;margin:1rem 0 .75rem;padding:.35rem 0 .75rem;border:none;font-weight:600}.test-content.content-rendered[data-v-7e43cde3] h1:after{content:"";position:absolute;left:0;bottom:20%;width:100%;height:7px;background:repeating-linear-gradient(-45deg,var(--heading-h1-stripe),var(--heading-h1-stripe) 2px,var(--heading-h1-stripe-alt) 2px,var(--heading-h1-stripe-alt) 4px)}.test-content.content-rendered[data-v-7e43cde3] h2{font-size:1.3rem;margin:1rem 0 .5rem;padding:.1em .15em .05em;color:var(--text);font-weight:600;background:linear-gradient(transparent 70%,var(--heading-h2-marker) 70%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.test-content.content-rendered[data-v-7e43cde3] .book-h3{position:relative;display:flex;align-items:center;justify-content:flex-start;font-size:1.1rem;margin:.75rem 0 .5rem;padding:.15em 1.7em;min-height:1.35em;gap:0;font-weight:600}.test-content.content-rendered[data-v-7e43cde3] .book-h3-text{flex-shrink:0;position:relative;z-index:1}.test-content.content-rendered[data-v-7e43cde3] .book-h3-line{display:none}.test-content.content-rendered[data-v-7e43cde3] .book-h3:before,.test-content.content-rendered[data-v-7e43cde3] .book-h3:after{content:"";position:absolute;top:50%;width:1.45em;height:.1em;background-color:var(--text);transform:translateY(-50%) rotate(-60deg)}.test-content.content-rendered[data-v-7e43cde3] .book-h3:before{left:0}.test-content.content-rendered[data-v-7e43cde3] .book-h3:after{right:0}.test-content.content-rendered[data-v-7e43cde3] h4{position:relative;display:inline-block;font-size:.95rem;margin:.75rem 0 1.15rem;padding-bottom:.35rem;font-weight:600;border:none}.test-content.content-rendered[data-v-7e43cde3] h4:before{content:"";position:absolute;bottom:20%;left:0;width:60px;height:1px;background-color:var(--text);border-radius:0}.test-content.content-rendered[data-v-7e43cde3] .book-table,.test-content.content-rendered[data-v-7e43cde3] .book-split{margin:.5rem 0}.test-content.content-rendered[data-v-7e43cde3] .book-table td{border:1px solid var(--border);padding:.35rem .5rem}.test-content.content-rendered[data-v-7e43cde3] .book-split{max-width:100%;box-sizing:border-box}.test-content.content-rendered[data-v-7e43cde3] .book-split-cell{min-width:0;padding:.35rem .5rem;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.test-content[data-v-7e43cde3] .test-input{border:1px solid var(--accent);background:var(--code-bg);color:var(--text);padding:.25rem .5rem;border-radius:4px;box-sizing:border-box}.test-actions[data-v-7e43cde3]{margin-top:1rem}.btn-submit[data-v-7e43cde3]{padding:.5rem 1rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer}.result-backdrop[data-v-dd0e5fae]{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1001}.result-dialog[data-v-dd0e5fae]{background:var(--nav-bg);border:1px solid var(--border);border-radius:12px;min-width:400px;max-width:90vw;max-height:85vh;overflow:hidden;display:flex;flex-direction:column}.result-dialog[style*=width][data-v-dd0e5fae]{min-width:0;max-width:none}.dialog-header[data-v-dd0e5fae]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border);gap:1rem}.dialog-header h3[data-v-dd0e5fae]{margin:0;font-size:1.1rem}.score-display[data-v-dd0e5fae]{display:flex;align-items:baseline;gap:.75rem}.score-fraction[data-v-dd0e5fae]{font-size:1.75rem;font-weight:700;color:var(--text);letter-spacing:.02em}.score-percent[data-v-dd0e5fae]{font-size:1.75rem;font-weight:700;color:var(--accent);letter-spacing:.02em}.dialog-close[data-v-dd0e5fae]{background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;line-height:1;padding:0 .25rem}.dialog-close[data-v-dd0e5fae]:hover{color:var(--text)}.dialog-body[data-v-dd0e5fae]{padding:1.25rem;overflow-y:auto}.result-actions[data-v-dd0e5fae]{margin-top:1rem}.btn-close[data-v-dd0e5fae]{padding:.5rem 1rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer;font-size:.9375rem}.btn-close[data-v-dd0e5fae]:hover{opacity:.95}.result-content[data-v-dd0e5fae]{line-height:1.6}.result-content.content-rendered[data-v-dd0e5fae] h1{position:relative;font-size:1.65rem;margin:1rem 0 .75rem;padding:.35rem 0 .75rem;border:none;font-weight:600}.result-content.content-rendered[data-v-dd0e5fae] h1:after{content:"";position:absolute;left:0;bottom:20%;width:100%;height:7px;background:repeating-linear-gradient(-45deg,var(--heading-h1-stripe),var(--heading-h1-stripe) 2px,var(--heading-h1-stripe-alt) 2px,var(--heading-h1-stripe-alt) 4px)}.result-content.content-rendered[data-v-dd0e5fae] h2{font-size:1.3rem;margin:1rem 0 .5rem;padding:.1em .15em .05em;color:var(--text);font-weight:600;background:linear-gradient(transparent 70%,var(--heading-h2-marker) 70%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.result-content.content-rendered[data-v-dd0e5fae] .book-h3{position:relative;display:flex;align-items:center;justify-content:flex-start;font-size:1.1rem;margin:.75rem 0 .5rem;padding:.15em 1.7em;min-height:1.35em;gap:0;font-weight:600}.result-content.content-rendered[data-v-dd0e5fae] .book-h3-text{flex-shrink:0;position:relative;z-index:1}.result-content.content-rendered[data-v-dd0e5fae] .book-h3-line{display:none}.result-content.content-rendered[data-v-dd0e5fae] .book-h3:before,.result-content.content-rendered[data-v-dd0e5fae] .book-h3:after{content:"";position:absolute;top:50%;width:1.45em;height:.1em;background-color:var(--text);transform:translateY(-50%) rotate(-60deg)}.result-content.content-rendered[data-v-dd0e5fae] .book-h3:before{left:0}.result-content.content-rendered[data-v-dd0e5fae] .book-h3:after{right:0}.result-content.content-rendered[data-v-dd0e5fae] h4{position:relative;display:inline-block;font-size:.95rem;margin:.75rem 0 1.15rem;padding-bottom:.35rem;font-weight:600;border:none}.result-content.content-rendered[data-v-dd0e5fae] h4:before{content:"";position:absolute;bottom:20%;left:0;width:60px;height:1px;background-color:var(--text);border-radius:0}.result-content.content-rendered[data-v-dd0e5fae] .book-table,.result-content.content-rendered[data-v-dd0e5fae] .book-split{margin:.5rem 0}.result-content.content-rendered[data-v-dd0e5fae] .book-table td{border:1px solid var(--border);padding:.35rem .5rem}.result-content.content-rendered[data-v-dd0e5fae] .book-split{max-width:100%;box-sizing:border-box}.result-content.content-rendered[data-v-dd0e5fae] .book-split-cell{min-width:0;padding:.35rem .5rem;overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.result-content[data-v-dd0e5fae] .result-correct{border:2px solid #2563eb;border-radius:4px;padding:.1rem .25rem;background:rgba(37,99,235,.08)}.result-content[data-v-dd0e5fae] .result-wrong{border:2px solid #dc2626;border-radius:4px;padding:.1rem .25rem;background:rgba(220,38,38,.08)}.page-view[data-v-3691c5ed]{padding:1rem 2rem 2rem;margin:0 auto;min-height:100%}.page-toolbar[data-v-3691c5ed]{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.toggle-label[data-v-3691c5ed]{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--text-muted)}.toggle-check[data-v-3691c5ed]{position:absolute;opacity:0;width:0;height:0}.toggle-slider[data-v-3691c5ed]{position:relative;width:2.5rem;height:1.25rem;background:var(--border);border-radius:1.25rem;transition:background .2s}.toggle-slider[data-v-3691c5ed]:after{content:"";position:absolute;width:1rem;height:1rem;left:2px;top:2px;background:var(--text);border-radius:50%;transition:transform .2s}.toggle-check:checked+.toggle-slider[data-v-3691c5ed]{background:var(--accent)}.toggle-check:checked+.toggle-slider[data-v-3691c5ed]:after{transform:translate(1.25rem)}.page-textarea[data-v-3691c5ed]{width:100%;min-height:max(520px,52vh);padding:1rem;font-size:.9375rem;font-family:inherit;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;resize:vertical}@media (min-height: 900px){.page-textarea[data-v-3691c5ed]{min-height:max(520px,80vh)}}.page-read[data-v-3691c5ed]{margin-bottom:2rem}.btn-toolbar[data-v-3691c5ed]{padding:.4rem .75rem;font-size:.875rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer}.btn-toolbar[data-v-3691c5ed]:hover{opacity:.9}.btn-toolbar--on[data-v-3691c5ed]{opacity:1;box-shadow:0 0 0 2px var(--bg)}.page-footer[data-v-3691c5ed]{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:.875rem;color:var(--text-muted)}.footer-section h4[data-v-3691c5ed]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.test-results ul[data-v-3691c5ed]{list-style:none;padding:0;margin:0}.test-results li[data-v-3691c5ed]{margin:.25rem 0}.page-toc[data-v-3691c5ed]{margin-bottom:1.25rem;padding:1rem 1.25rem;background:var(--nav-bg);border:1px solid var(--border);border-radius:8px}.toc-title[data-v-3691c5ed]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0 0 .5rem}.toc-list[data-v-3691c5ed]{list-style:none;padding:0;margin:0}.toc-item[data-v-3691c5ed]{margin:.2rem 0}.toc-item--h1[data-v-3691c5ed]{padding-left:0}.toc-item--h2[data-v-3691c5ed]{padding-left:1rem}.toc-item--h3[data-v-3691c5ed]{padding-left:2rem}.toc-item--h4[data-v-3691c5ed]{padding-left:3rem}.toc-link[data-v-3691c5ed]{color:var(--accent);text-decoration:none;font-size:.9375rem}.toc-link[data-v-3691c5ed]:hover{text-decoration:underline}.recent-achievement[data-v-3691c5ed]{font-size:.875rem;color:var(--text-muted);margin-left:.5rem}.recent-achievement-label[data-v-3691c5ed]{margin-left:.35rem}.page-not-found[data-v-3691c5ed]{padding:2rem;color:var(--text-muted)}.page-fab-bar[data-v-3691c5ed]{position:fixed;bottom:1.25rem;left:calc(260px + (100vw - 260px)/2);transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:.5rem}.page-fab-slot[data-v-3691c5ed]{width:6.75rem;display:flex;align-items:center;flex-shrink:0}.page-fab-slot--left[data-v-3691c5ed]{justify-content:flex-end}.page-fab-slot--right[data-v-3691c5ed]{justify-content:flex-start}.page-back-to-top[data-v-3691c5ed]{flex-shrink:0;padding:.5rem 1.1rem;font-size:.875rem;font-family:inherit;color:var(--bg);background:var(--accent);border:none;border-radius:999px;box-shadow:0 4px 14px #00000038;cursor:pointer}.page-back-to-top[data-v-3691c5ed]:hover{opacity:.92}.page-nav-fab[data-v-3691c5ed]{padding:.5rem 1rem;font-size:.875rem;font-family:inherit;color:var(--bg);background:var(--accent);border:none;border-radius:999px;box-shadow:0 4px 14px #00000038;cursor:pointer}.page-nav-fab[data-v-3691c5ed]:hover{opacity:.92}.phone-bookshelf-overlay[data-v-ed92ff09]{position:fixed;inset:0;z-index:10050;background:rgba(0,0,0,.6);display:flex;align-items:stretch;justify-content:center;padding:.5rem;box-sizing:border-box}.phone-bookshelf-modal[data-v-ed92ff09]{background:var(--nav-bg);border:1px solid var(--border);border-radius:10px;width:100%;max-width:min(430px,100vw - 1rem);max-height:min(90vh,100dvh - 1rem);margin:auto;display:flex;flex-direction:column;box-shadow:0 12px 40px #00000073;min-height:0}.phone-bookshelf-header[data-v-ed92ff09]{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;border-bottom:1px solid var(--border);flex-shrink:0}.phone-bookshelf-title[data-v-ed92ff09]{margin:0;font-size:1rem;font-weight:600}.phone-bookshelf-close[data-v-ed92ff09]{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;line-height:1;padding:0 .25rem}.phone-bookshelf-body[data-v-ed92ff09]{padding:.65rem .85rem .85rem;overflow:auto;flex:1;min-height:0;-webkit-overflow-scrolling:touch}.phone-bookshelf-error[data-v-ed92ff09]{color:#f87171;font-size:.8rem;margin:0 0 .5rem}.phone-bookshelf-search-wrap[data-v-ed92ff09],.phone-bookshelf-tag-filter-wrap[data-v-ed92ff09]{margin-bottom:.65rem}.phone-bookshelf-tag-filter-label[data-v-ed92ff09]{display:block;font-size:.78rem;font-weight:600;color:var(--text-muted);margin-bottom:.3rem}.phone-bookshelf-tag-filter-select[data-v-ed92ff09]{width:100%;padding:.5rem .55rem;font-size:16px;background:var(--main-bg, rgba(15, 23, 42, .9));color:var(--text);border:1px solid var(--border);border-radius:8px;box-sizing:border-box;cursor:pointer}.phone-bookshelf-tag-filter-select[data-v-ed92ff09]:focus{outline:none;border-color:var(--accent)}.phone-bookshelf-search[data-v-ed92ff09]{width:100%;padding:.55rem .65rem;font-size:16px;background:var(--main-bg, rgba(15, 23, 42, .9));color:var(--text);border:1px solid var(--border);border-radius:8px;box-sizing:border-box}.phone-bookshelf-search[data-v-ed92ff09]:focus{outline:none;border-color:var(--accent)}.phone-bookshelf-loading[data-v-ed92ff09],.phone-bookshelf-empty[data-v-ed92ff09]{color:var(--text-muted);font-size:.85rem;margin:0}.phone-bookshelf-list[data-v-ed92ff09]{list-style:none;padding:0;margin:0}.phone-bookshelf-list-item[data-v-ed92ff09]{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;padding:.65rem .75rem;border-radius:8px;margin-bottom:.4rem;background:rgba(255,255,255,.03);border:1px solid var(--border)}.phone-bookshelf-list-info[data-v-ed92ff09]{min-width:0}.phone-bookshelf-list-name[data-v-ed92ff09]{font-weight:600;font-size:.9rem;display:block}.phone-bookshelf-list-desc[data-v-ed92ff09]{display:block;font-size:.78rem;color:var(--text-muted);margin-top:.2rem;line-height:1.4}.phone-bookshelf-tags[data-v-ed92ff09]{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.3rem}.phone-bookshelf-tag[data-v-ed92ff09]{font-size:.7rem;padding:.12rem .4rem;border-radius:999px;background:rgba(56,189,248,.12);border:1px solid var(--border);color:var(--text-muted)}.phone-bookshelf-import-btn[data-v-ed92ff09]{padding:.55rem .85rem;font-size:.9rem;font-weight:600;background:var(--accent);color:var(--bg);border:none;border-radius:8px;cursor:pointer;width:100%}.phone-bookshelf-import-btn[data-v-ed92ff09]:disabled{opacity:.65;cursor:wait}.phone-layout[data-v-c3b02680]{min-height:100vh;display:flex;flex-direction:column;background:var(--bg, #1a1a1e);color:var(--text, #e8e8ed);max-width:430px;margin:0 auto;box-sizing:border-box;touch-action:manipulation}.phone-layout-header[data-v-c3b02680]{padding:.75rem 1rem;border-bottom:1px solid var(--border, #333);flex-shrink:0}.phone-font-row[data-v-c3b02680]{display:flex;align-items:center;gap:.4rem;margin-bottom:.55rem;padding-bottom:.5rem;border-bottom:1px solid var(--border, #333)}.phone-font-row-label[data-v-c3b02680]{font-size:.72rem;color:var(--text-muted, #888);margin-right:.15rem}.phone-font-btn[data-v-c3b02680]{width:2.5rem;height:2.5rem;padding:0;font-size:1.35rem;line-height:1;font-weight:600;font-family:inherit;color:var(--text, #eee);background:var(--nav-bg, #252528);border:1px solid var(--border, #444);border-radius:8px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.phone-font-btn[data-v-c3b02680]:disabled{opacity:.35;cursor:not-allowed}.phone-font-value[data-v-c3b02680]{flex:1;text-align:center;font-size:.8rem;font-variant-numeric:tabular-nums;color:var(--text-muted, #aaa)}.phone-title[data-v-c3b02680]{margin:0;font-size:1.1rem;font-weight:600}.phone-sub[data-v-c3b02680]{margin:.25rem 0 0;font-size:.7rem;color:var(--text-muted, #888)}.phone-tools[data-v-c3b02680]{display:flex;gap:.4rem;margin-top:.6rem}.phone-tool-btn[data-v-c3b02680]{flex:1;padding:.45rem .5rem;font-size:.78rem;font-weight:600;font-family:inherit;color:var(--bg, #111);background:var(--accent, #6b9fff);border:none;border-radius:8px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.phone-files[data-v-c3b02680]{flex-shrink:0;padding:.5rem .75rem;border-bottom:1px solid var(--border, #333);max-height:38vh;overflow-y:auto}.phone-files-toolbar[data-v-c3b02680]{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.phone-files-hint[data-v-c3b02680]{font-size:.7rem;color:var(--text-muted, #888)}.phone-icon-btn[data-v-c3b02680]{width:2.25rem;height:2.25rem;padding:0;font-size:1.35rem;line-height:1;font-weight:600;border:none;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.phone-add[data-v-c3b02680]{background:var(--accent, #6b9fff);color:var(--bg, #111)}.phone-minus[data-v-c3b02680]{background:var(--border, #444);color:var(--text, #eee)}.phone-minus[data-v-c3b02680]:disabled{opacity:.35;cursor:not-allowed}.phone-file-list[data-v-c3b02680]{list-style:none;margin:0;padding:0}.phone-file-row[data-v-c3b02680]{display:flex;align-items:center;gap:.35rem;margin:.25rem 0}.phone-file-row--active .phone-file-name[data-v-c3b02680]{box-shadow:0 0 0 2px var(--accent, #6b9fff)}.phone-file-name[data-v-c3b02680]{flex:1;text-align:left;padding:.5rem .65rem;font-size:.9rem;font-family:inherit;color:inherit;background:var(--nav-bg, #252528);border:1px solid var(--border, #333);border-radius:8px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.phone-main-pane[data-v-c3b02680]{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.phone-shell[data-v-747ac20e]{max-width:390px;margin:0 auto;padding:.75rem .85rem 5rem;min-height:100%;box-sizing:border-box}.page-toolbar[data-v-747ac20e]{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.75rem}.toggle-label[data-v-747ac20e]{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;font-size:.8rem;color:var(--text-muted)}.toggle-check[data-v-747ac20e]{position:absolute;opacity:0;width:0;height:0}.toggle-slider[data-v-747ac20e]{position:relative;width:2.25rem;height:1.1rem;background:var(--border);border-radius:1.25rem;transition:background .2s}.toggle-slider[data-v-747ac20e]:after{content:"";position:absolute;width:.85rem;height:.85rem;left:2px;top:2px;background:var(--text);border-radius:50%;transition:transform .2s}.toggle-check:checked+.toggle-slider[data-v-747ac20e]{background:var(--accent)}.toggle-check:checked+.toggle-slider[data-v-747ac20e]:after{transform:translate(1.1rem)}.page-textarea[data-v-747ac20e]{width:100%;min-height:42vh;padding:.65rem;font-size:16px;font-family:inherit;background:var(--code-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;resize:vertical;box-sizing:border-box}.page-read[data-v-747ac20e]{margin-bottom:1rem;font-size:.95rem}.btn-toolbar[data-v-747ac20e]{padding:.35rem .55rem;font-size:.75rem;background:var(--accent);color:var(--bg);border:none;border-radius:6px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn-toolbar--on[data-v-747ac20e]{box-shadow:0 0 0 2px var(--bg)}.page-footer[data-v-747ac20e]{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border);font-size:.8rem;color:var(--text-muted)}.footer-section h4[data-v-747ac20e]{font-size:.65rem;text-transform:uppercase;margin-bottom:.35rem}.test-results ul[data-v-747ac20e]{list-style:none;padding:0;margin:0}.test-results li[data-v-747ac20e]{margin:.2rem 0}.page-toc[data-v-747ac20e]{margin-bottom:.85rem;padding:.65rem .75rem;background:var(--nav-bg);border:1px solid var(--border);border-radius:8px}.toc-title[data-v-747ac20e]{font-size:.65rem;text-transform:uppercase;color:var(--text-muted);margin:0 0 .35rem}.toc-list[data-v-747ac20e]{list-style:none;padding:0;margin:0}.toc-item[data-v-747ac20e]{margin:.15rem 0}.toc-item--h1[data-v-747ac20e]{padding-left:0}.toc-item--h2[data-v-747ac20e]{padding-left:.65rem}.toc-item--h3[data-v-747ac20e]{padding-left:1.2rem}.toc-item--h4[data-v-747ac20e]{padding-left:1.75rem}.toc-link[data-v-747ac20e]{color:var(--accent);text-decoration:none;font-size:.85rem}.recent-achievement[data-v-747ac20e]{font-size:.72rem;color:var(--text-muted);width:100%;flex-basis:100%}.recent-achievement-label[data-v-747ac20e]{margin-left:.25rem}.page-not-found[data-v-747ac20e]{padding:1.5rem .5rem;color:var(--text-muted);font-size:.9rem}.phone-fab-bar[data-v-747ac20e]{position:fixed;bottom:.85rem;left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:.35rem;max-width:min(100vw - 1rem,400px);touch-action:manipulation}.page-fab-slot[data-v-747ac20e]{width:3.5rem;display:flex;align-items:center;flex-shrink:0}.page-fab-slot--left[data-v-747ac20e]{justify-content:flex-end}.page-fab-slot--right[data-v-747ac20e]{justify-content:flex-start}.page-back-to-top[data-v-747ac20e]{flex-shrink:0;padding:.45rem .75rem;font-size:.75rem;font-family:inherit;color:var(--bg);background:var(--accent);border:none;border-radius:999px;box-shadow:0 4px 14px #00000038;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.page-nav-fab[data-v-747ac20e]{padding:.45rem .55rem;font-size:.72rem;font-family:inherit;color:var(--bg);background:var(--accent);border:none;border-radius:999px;box-shadow:0 4px 14px #00000038;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}:root{--bg: rgba(27, 38, 54, 1);--nav-bg: rgba(20, 28, 40, 1);--main-bg: rgba(27, 38, 54, 1);--text: #e2e8f0;--text-muted: #94a3b8;--accent: #38bdf8;--border: rgba(51, 65, 85, .8);--nav-hover: rgba(51, 65, 85, .6);--nav-active: rgba(56, 189, 248, .15);--code-bg: rgba(15, 23, 42, .9);--code-fg: #e2e8f0;--content-font-family: inherit;--content-font-size: 1rem;--heading-h1-stripe: #6ad1c8;--heading-h1-stripe-alt: rgba(255, 255, 255, .9);--heading-h2-marker: rgba(255, 220, 80, .5)}html{background-color:var(--bg);text-align:left;color:var(--text)}body{margin:0;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#app{height:100vh;text-align:left}html.phone-route-active{font-size:calc(var(--phone-root-px, 16) * 1px);touch-action:manipulation;-webkit-text-size-adjust:100%}html.phone-route-active body{touch-action:manipulation}.search-match-flash{animation:search-match-flash-anim .85s ease}@keyframes search-match-flash-anim{0%{box-shadow:0 0 #38bdf88c;background-color:#38bdf81f}40%{box-shadow:0 0 0 4px #38bdf859;background-color:#38bdf814}to{box-shadow:0 0 0 0 transparent;background-color:transparent}}
