:root{--bg: #ffffff;--fg: #2c3038;--heading: #1a1d23;--accent: #3b6fd8;--link: var(--accent);--muted: #7a8190;--code-bg: #f4f5f7;--code-fg: #c7254e;--border: #e4e6eb;--sidebar-bg: #f8f9fb;--mark-bg: #fff3a3;--mark-fg: inherit;--shadow: 0 8px 28px rgba(0, 0, 0, .14);--font-body: -apple-system, "Segoe UI", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", sans-serif;--font-code: "Cascadia Code", "Cascadia Mono", Consolas, "Courier New", monospace;--font-size: 16px;--line-height: 1.75;--content-width: 860px;color-scheme:light}[data-theme=dark]{--bg: #1e2026;--fg: #c9ced8;--heading: #e8ebf0;--accent: #6ea2ff;--muted: #8a909c;--code-bg: #272a31;--code-fg: #ff8f9f;--border: #353841;--sidebar-bg: #1a1c21;--mark-bg: #6b5a12;--mark-fg: #fff6c4;--shadow: 0 8px 28px rgba(0, 0, 0, .5);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--fg)}body{font-family:var(--font-body);font-size:14px}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}#app{display:flex;height:100%}#main{flex:1;display:flex;min-width:0}#scroller{flex:1 1 50%;overflow:auto;min-width:0;outline:none}#editor-pane{flex:1 1 50%;min-width:0;overflow:hidden;border-right:1px solid var(--border)}#editor-pane .cm-editor{height:100%;font-size:calc(var(--font-size) * .9)}#editor-pane .cm-scroller{font-family:var(--font-code);line-height:1.6}#editor-pane .cm-content{padding:16px 0 40vh}#scroller::-webkit-scrollbar,.side-panel::-webkit-scrollbar{width:10px;height:10px}#scroller::-webkit-scrollbar-thumb,.side-panel::-webkit-scrollbar-thumb{background:transparent;border-radius:6px;border:2px solid transparent;background-clip:content-box}#scroller.scrolling::-webkit-scrollbar-thumb,#scroller:hover::-webkit-scrollbar-thumb:hover,.side-panel:hover::-webkit-scrollbar-thumb{background-color:color-mix(in srgb,var(--fg) 28%,transparent)}::-webkit-scrollbar-corner{background:transparent}#sidebar{width:260px;flex:none;display:flex;flex-direction:column;background:var(--sidebar-bg);border-right:1px solid var(--border)}.side-tabs{display:flex;gap:4px;padding:8px 10px 4px}.side-tabs button{flex:1;border:0;background:transparent;padding:5px 0;border-radius:6px;cursor:pointer;color:var(--muted)}.side-tabs button.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:600}.side-panel{flex:1;overflow:auto;padding:4px 6px 24px;margin:0;list-style:none}.toc-tools{display:flex;gap:6px;padding:2px 4px 6px}.toc-tools button{border:0;background:none;color:var(--muted);font-size:12px;cursor:pointer;padding:2px 4px;border-radius:4px}.toc-tools button:hover{color:var(--accent)}#toc ul{list-style:none;margin:0;padding:0}#toc li{position:relative;display:flex;align-items:center;border-radius:6px}#toc li:hover{background:color-mix(in srgb,var(--fg) 6%,transparent)}#toc li.active>.toc-link{color:var(--accent);font-weight:600}#toc li.active{background:color-mix(in srgb,var(--accent) 9%,transparent)}.toc-link{flex:1;min-width:0;text-align:left;border:0;background:none;padding:4px 6px 4px 18px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--fg);font-size:13px}.toc-l1>.toc-link{font-weight:600}.toc-caret{position:absolute;width:16px;height:22px;border:0;background:none;cursor:pointer;padding:0;color:var(--muted)}.toc-caret+.toc-link{padding-left:18px}.toc-caret:before{content:"▾";font-size:11px;display:inline-block;transition:transform .15s}.toc-caret[aria-expanded=false]:before{transform:rotate(-90deg)}#toc .toc-empty{color:var(--muted);padding:12px;font-size:13px}#files li button{width:100%;text-align:left;border:0;background:none;padding:6px 8px;border-radius:6px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}#files li button:hover{background:color-mix(in srgb,var(--fg) 6%,transparent)}#files li.current button{color:var(--accent);font-weight:600;background:color-mix(in srgb,var(--accent) 9%,transparent)}.markdown-body{max-width:var(--content-width);margin:0 auto;padding:36px 48px 40vh;font-size:var(--font-size);line-height:var(--line-height);word-wrap:break-word}.markdown-body>:first-child{margin-top:0!important}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--heading);line-height:1.35;margin:1.6em 0 .7em;font-weight:650;scroll-margin-top:16px}.markdown-body h1{font-size:2em;padding-bottom:.3em;border-bottom:1px solid var(--border)}.markdown-body h2{font-size:1.5em;padding-bottom:.25em;border-bottom:1px solid var(--border)}.markdown-body h3{font-size:1.25em}.markdown-body h4{font-size:1.1em}.markdown-body h5,.markdown-body h6{font-size:1em;color:var(--muted)}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body pre,.markdown-body .table-wrap,.markdown-body details,.markdown-body .mermaid-block,.markdown-body .math-block{margin:0 0 1em}.markdown-body a{color:var(--link);text-decoration:none;cursor:pointer}.markdown-body a:hover{text-decoration:underline}.markdown-body strong{color:var(--heading)}.markdown-body ul,.markdown-body ol{padding-left:1.8em}.markdown-body li+li,.markdown-body li>ul,.markdown-body li>ol{margin-top:.25em}.markdown-body li>ul,.markdown-body li>ol{margin-bottom:0}.markdown-body .task-list-item{list-style:none}.markdown-body .task-list-item input{margin:0 .4em 0 -1.4em;vertical-align:middle;accent-color:var(--accent)}.markdown-body blockquote{padding:.2em 1em;color:var(--muted);border-left:4px solid color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 4%,transparent);border-radius:0 6px 6px 0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body hr{border:0;height:1px;background:var(--border);margin:2em 0}.markdown-body img{max-width:100%;border-radius:4px}.markdown-body mark{background:var(--mark-bg);color:var(--mark-fg);padding:.05em .2em;border-radius:3px}.markdown-body code{font-family:var(--font-code);font-size:.88em;background:var(--code-bg);color:var(--code-fg);padding:.15em .4em;border-radius:4px}.markdown-body pre{position:relative;background:var(--code-bg);border-radius:8px;padding:14px 16px;overflow:auto;line-height:1.55;border:1px solid var(--border)}.markdown-body pre code{background:none;padding:0;color:var(--fg);font-size:.86em}.markdown-body pre[data-lang]:before{content:attr(data-lang);position:absolute;top:4px;right:56px;font-size:11px;color:var(--muted);font-family:var(--font-body);text-transform:lowercase}.copy-btn{position:absolute;top:6px;right:8px;font-size:12px;padding:1px 8px;border-radius:5px;cursor:pointer;border:1px solid var(--border);background:var(--bg);color:var(--muted);opacity:0;transition:opacity .15s}pre:hover .copy-btn,.copy-btn:focus-visible{opacity:1}.table-wrap{overflow-x:auto}.markdown-body table{border-collapse:collapse;min-width:50%;font-size:.95em}.markdown-body th,.markdown-body td{border:1px solid var(--border);padding:6px 13px}.markdown-body th{background:color-mix(in srgb,var(--fg) 5%,transparent);font-weight:600;color:var(--heading)}.markdown-body tbody tr:nth-child(2n){background:color-mix(in srgb,var(--fg) 3%,transparent)}.markdown-body details{border:1px solid var(--border);border-radius:6px;padding:.4em 1em}.markdown-body summary{cursor:pointer;font-weight:600}.markdown-body kbd{font-family:var(--font-code);font-size:.85em;padding:.1em .45em;border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;background:var(--code-bg)}.mermaid-block{text-align:center;overflow-x:auto}.mermaid-block svg{max-width:100%;height:auto}.mermaid-src{text-align:left;opacity:.6}.math-block{overflow-x:auto;overflow-y:hidden}.render-error{color:#d33!important;white-space:pre-wrap;text-align:left}.hljs-comment,.hljs-quote{color:#8b929c;font-style:italic}.hljs-keyword,.hljs-selector-tag,.hljs-built_in,.hljs-doctag{color:#a626a4}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-template-variable{color:#50a14f}.hljs-number,.hljs-literal,.hljs-symbol,.hljs-bullet,.hljs-variable{color:#b76b01}.hljs-title,.hljs-section,.hljs-name,.hljs-selector-id,.hljs-selector-class{color:#4078f2}.hljs-type,.hljs-params,.hljs-attr,.hljs-meta{color:#c18401}.hljs-tag,.hljs-deletion{color:#e45649}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}[data-theme=dark] .hljs-comment,[data-theme=dark] .hljs-quote{color:#7f848e}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag,[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-doctag{color:#c678dd}[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-regexp,[data-theme=dark] .hljs-addition,[data-theme=dark] .hljs-attribute{color:#98c379}[data-theme=dark] .hljs-number,[data-theme=dark] .hljs-literal,[data-theme=dark] .hljs-symbol,[data-theme=dark] .hljs-bullet,[data-theme=dark] .hljs-variable{color:#d19a66}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-selector-class{color:#61afef}[data-theme=dark] .hljs-type,[data-theme=dark] .hljs-params,[data-theme=dark] .hljs-attr,[data-theme=dark] .hljs-meta{color:#e5c07b}[data-theme=dark] .hljs-tag,[data-theme=dark] .hljs-deletion{color:#e06c75}body{display:flex;flex-direction:column}#app{flex:1;min-height:0}#topbar{flex:none;display:flex;align-items:center;gap:8px;height:38px;padding:0 8px;background:var(--sidebar-bg);border-bottom:1px solid var(--border);user-select:none}.tb-group{display:flex;align-items:center;gap:2px}.tb-right{margin-left:auto}.tb-btn{width:30px;height:28px;border:0;background:none;border-radius:6px;cursor:pointer;font-size:14px;color:var(--muted)}.tb-btn:hover{background:color-mix(in srgb,var(--fg) 8%,transparent);color:var(--fg)}.tb-modes{display:flex;padding:2px;border-radius:8px;background:color-mix(in srgb,var(--fg) 6%,transparent);margin-left:8px}.tb-modes button{border:0;background:none;padding:3px 14px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--muted)}.tb-modes button:hover{color:var(--fg)}.tb-modes button[aria-checked=true]{background:var(--bg);color:var(--accent);font-weight:600;box-shadow:0 1px 3px #0000001f}#save-state{font-size:12px;color:var(--muted);margin-right:6px;white-space:nowrap}#save-state.dirty{color:#d9822b}#wysiwyg-pane{flex:1;min-width:0;overflow:auto;background:var(--bg)}.wys-loading{padding:40px;text-align:center;color:var(--muted)}.first-tip{position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;max-width:min(760px,94vw);padding:10px 14px;border-radius:10px;background:var(--bg);border:1px solid var(--accent);box-shadow:var(--shadow);font-size:13px}.first-tip kbd,.help-panel kbd{font-family:var(--font-code);font-size:12px;padding:1px 6px;border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;background:var(--code-bg);white-space:nowrap}.first-tip button{flex:none;border:1px solid var(--border);background:var(--bg);padding:4px 10px;border-radius:6px;cursor:pointer}.first-tip button[data-act=close]{background:var(--accent);color:#fff;border-color:var(--accent)}.help-panel{width:min(820px,94vw)}.help-cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 24px}.help-table{width:100%;border-collapse:collapse;font-size:13px}.help-table td{padding:4px 0;border-bottom:1px solid var(--border);vertical-align:top}.help-table td:first-child{width:42%;padding-right:10px}.help-table.wide td:first-child{width:170px}.help-list{margin:0;padding-left:1.4em;font-size:13px;line-height:1.9}.share-dlg{width:min(560px,94vw)}.share-dlg .share-mode{border:1px solid var(--border);border-radius:8px;padding:4px 12px 8px;margin:0 0 8px}.share-dlg .share-mode legend{font-size:13px;color:var(--muted)}.share-dlg .primary-btn{background:var(--accent);color:#fff;border-color:var(--accent);padding:7px 18px}.share-ok{margin-top:14px;padding:10px 14px;border-radius:8px;border:1px solid #2e8b57;font-size:13px}.share-ok p{margin:4px 0}.share-ok code{font-family:var(--font-code);word-break:break-all}.share-dlg .warn{color:#d9822b;font-size:13px}#findbar{position:fixed;top:46px;right:18px;z-index:50;display:flex;align-items:center;gap:4px;padding:6px;background:var(--bg);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}#find-input{width:200px;border:1px solid var(--border);border-radius:5px;padding:4px 8px;background:var(--code-bg);outline:none}#find-input:focus{border-color:var(--accent)}#find-count{min-width:52px;text-align:center;color:var(--muted);font-size:12px}#findbar button{border:0;background:none;width:26px;height:26px;border-radius:5px;cursor:pointer}#findbar button:hover{background:color-mix(in srgb,var(--fg) 8%,transparent)}::highlight(find){background-color:#ffd50073}::highlight(find-current){background-color:#ff8c00d9;color:#000}#wordcount{position:fixed;right:16px;bottom:12px;z-index:30;font-size:12px;color:var(--muted);padding:3px 10px;border-radius:12px;background:color-mix(in srgb,var(--bg) 85%,transparent);border:1px solid var(--border);pointer-events:none}#toast{position:fixed;left:50%;bottom:36px;z-index:200;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:color-mix(in srgb,var(--fg) 88%,transparent);color:var(--bg);padding:7px 16px;border-radius:8px;font-size:13px;transition:opacity .2s,transform .2s}#toast.show{opacity:1;transform:translate(-50%)}#mode-badge{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:40;font-size:12px;padding:2px 10px;border-radius:10px;background:color-mix(in srgb,var(--accent) 14%,var(--bg));color:var(--accent);pointer-events:none}.zoom-badge{position:fixed;z-index:45;width:28px;height:28px;border-radius:6px;border:1px solid var(--border);background:color-mix(in srgb,var(--bg) 90%,transparent);color:var(--fg);cursor:zoom-in;font-size:15px;line-height:1;box-shadow:var(--shadow)}.ctx-menu{position:fixed;z-index:300;min-width:210px;margin:0;padding:5px;list-style:none;background:var(--bg);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);font-size:13px;outline:none;user-select:none}.ctx-menu li[role^=menuitem]{display:flex;align-items:center;padding:5px 10px 5px 4px;border-radius:5px;cursor:default;outline:none}.ctx-menu li[role^=menuitem]:focus{background:color-mix(in srgb,var(--accent) 14%,transparent)}.ctx-menu li[aria-disabled=true]{opacity:.45}.ctx-menu .chk{width:20px;text-align:center;color:var(--accent)}.ctx-menu .lbl{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.ctx-menu .key{margin-left:24px;color:var(--muted);font-size:12px}.ctx-menu .sep{height:1px;margin:4px 6px;background:var(--border)}.overlay{position:fixed;inset:0;z-index:100;outline:none}.overlay-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--bg);cursor:pointer;font-size:15px}.viewer{background:color-mix(in srgb,var(--bg) 94%,#000);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:grab}.viewer:active{cursor:grabbing}.viewer-stage{transform-origin:center center}.viewer-stage img,.viewer-stage svg{display:block;max-width:92vw;max-height:88vh;user-select:none;-webkit-user-drag:none}.viewer-stage svg{background:var(--bg)}.viewer-hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);color:var(--muted);font-size:12px}.mindmap{background:var(--bg)}.mindmap .markmap-svg{width:100%;height:100%;display:block;color:var(--fg)}.mindmap .markmap-foreign{color:var(--fg);font-family:var(--font-body)}.mindmap .markmap-foreign code{background:var(--code-bg);padding:0 .3em;border-radius:3px}.mindmap-bar{position:absolute;top:12px;right:14px;display:flex;gap:6px}.mindmap-bar button,.row-btns button{border:1px solid var(--border);background:var(--bg);padding:5px 12px;border-radius:6px;cursor:pointer}.mindmap-bar button:hover,.row-btns button:hover{border-color:var(--accent);color:var(--accent)}.panel-overlay{background:#00000052;display:flex;align-items:center;justify-content:center}.panel{position:relative;width:min(620px,94vw);max-height:88vh;display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.panel header{padding:14px 20px 4px}.panel h2{margin:0;font-size:17px}.panel h3{font-size:14px;margin:20px 0 6px}.panel-tabs{display:flex;gap:4px;padding:8px 16px 0;border-bottom:1px solid var(--border)}.panel-tabs button{border:0;background:none;padding:7px 12px;cursor:pointer;border-bottom:2px solid transparent;color:var(--muted)}.panel-tabs button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.panel-body{padding:12px 20px 20px;overflow:auto}.panel .row{display:flex;align-items:center;gap:12px;padding:6px 0}.panel .row>span{width:140px;flex:none}.panel .row.check>span{width:auto}.panel .row select,.panel .row input[type=text]{flex:1;min-width:0;padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--code-bg)}.panel .row input[type=range]{flex:1;accent-color:var(--accent)}.panel .row input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px}.panel .hint{color:var(--muted);font-size:12px;margin:4px 0 8px}.row-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.color-item{display:flex;align-items:center;gap:8px;cursor:pointer}.color-item input{width:34px;height:26px;padding:0;border:1px solid var(--border);border-radius:5px;background:none;cursor:pointer}.keys-table{width:100%;border-collapse:collapse}.keys-table td{padding:4px 0;border-bottom:1px solid var(--border)}.key-cap{min-width:130px;padding:3px 10px;border:1px solid var(--border);border-radius:5px;background:var(--code-bg);font-family:var(--font-code);font-size:12px;cursor:pointer}.key-cap.custom{border-color:var(--accent)}.key-cap.capturing{border-color:var(--accent);color:var(--accent)}.welcome{max-width:640px;margin:8vh auto 0;padding:0 24px}.welcome h1{font-size:30px;margin:0 0 6px;border:0;color:var(--heading)}.welcome .sub{color:var(--muted);margin:0 0 24px}.welcome .actions{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap}.welcome .actions button{padding:8px 18px;border-radius:8px;border:1px solid var(--border);background:var(--bg);cursor:pointer}.welcome .actions .primary{background:var(--accent);color:#fff;border-color:var(--accent)}.welcome .drop{border:2px dashed var(--border);border-radius:12px;padding:26px;text-align:center;color:var(--muted);margin-bottom:18px}.welcome .notice{padding:10px 14px;border-radius:8px;background:color-mix(in srgb,var(--accent) 9%,transparent);margin-bottom:18px;font-size:13px}.welcome .notice button{margin-left:8px;border:0;background:none;color:var(--accent);cursor:pointer;text-decoration:underline}.welcome h2{font-size:15px;margin:22px 0 8px;border:0;padding:0}.welcome ul{list-style:none;padding:0;margin:0}.welcome li button{width:100%;text-align:left;border:0;background:none;padding:6px 8px;border-radius:6px;cursor:pointer}.welcome li button:hover{background:color-mix(in srgb,var(--fg) 6%,transparent)}.welcome li small{color:var(--muted);margin-left:8px}.welcome .keys{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;font-size:13px;color:var(--muted)}.welcome .keys kbd{font-family:var(--font-code);color:var(--fg)}body.dragging #scroller{box-shadow:inset 0 0 0 3px var(--accent)}@media print{#topbar,#sidebar,#findbar,#wordcount,#toast,#editor-pane,#wysiwyg-pane,.first-tip,.copy-btn,.zoom-badge,.ctx-menu,.overlay{display:none!important}#scroller{display:block!important}body{display:block}html,body{height:auto;overflow:visible;background:var(--bg);-webkit-print-color-adjust:exact;print-color-adjust:exact}#app,#main{display:block;height:auto}#scroller{overflow:visible}.markdown-body{max-width:none;padding:0}.markdown-body pre{white-space:pre-wrap;word-break:break-all}.markdown-body h1,.markdown-body h2,.markdown-body h3{break-after:avoid}.markdown-body pre,.markdown-body img,.markdown-body table,.mermaid-block{break-inside:avoid}@page{margin:16mm 14mm}}html,body{overflow:auto;height:auto;min-height:100%}body{display:block}a{color:var(--link)}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.loading{color:var(--muted);text-align:center;padding:60px 0}.hint{color:var(--muted);font-size:13px}.bad{color:#d33}.ok{color:#2e8b57}.warn{color:#d9822b}button,.btn{font:inherit}.card button,.dlg button,.login-box button,.share-msg button{border:1px solid var(--border);background:var(--bg);color:var(--fg);padding:6px 14px;border-radius:6px;cursor:pointer}.card button:hover,.dlg button:hover{border-color:var(--accent);color:var(--accent)}button.primary,.card button.primary,.dlg button.primary,.login-box button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{filter:brightness(1.08);color:#fff!important}button.danger:hover{border-color:#d33!important;color:#d33!important}button:disabled{opacity:.6;cursor:progress}.link-btn{border:0!important;background:none!important;color:var(--accent)!important;padding:0 4px!important;cursor:pointer}input,select,textarea{font:inherit;color:var(--fg);background:var(--code-bg);border:1px solid var(--border);border-radius:6px;padding:6px 10px}input:focus,select:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 40%,transparent);border-color:var(--accent)}.share-page{display:flex;flex-direction:column;height:100vh;overflow:hidden}.web-topbar{flex:none;display:flex;align-items:center;gap:8px;height:44px;padding:0 10px;background:var(--sidebar-bg);border-bottom:1px solid var(--border)}.web-topbar .doc-title{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--heading)}.web-topbar .tb-right{display:flex;gap:2px}.web-topbar .tb-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.share-page #app{flex:1;min-height:0}.share-page #findbar{top:52px}.share-msg{max-width:420px;margin:12vh auto 0;text-align:center}.share-msg h1{border:0!important;font-size:24px}.pw-form{display:flex;flex-direction:column;gap:12px}.pw-form input{padding:10px 12px;font-size:16px;text-align:center}.pw-form button{padding:10px;background:var(--accent);color:#fff;border-color:var(--accent)}.pw-err{color:#d33;min-height:1.4em;margin:0}@media(max-width:860px){.share-page #sidebar{position:fixed;top:44px;bottom:0;left:0;z-index:40;width:min(300px,82vw);box-shadow:var(--shadow)}.markdown-body{padding:20px 16px 30vh}}@media print{.share-page{height:auto;overflow:visible;display:block}.web-topbar{display:none!important}}.dash-page{background:var(--sidebar-bg)}.dash-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:10px 24px;background:var(--bg);border-bottom:1px solid var(--border)}.dash-head h1{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;color:var(--heading)}.dash-tabs{display:flex;gap:4px;flex-wrap:wrap}.dash-tabs button{border:0;background:none;padding:8px 14px;border-radius:6px;cursor:pointer;color:var(--muted)}.dash-tabs button:hover{color:var(--fg);background:color-mix(in srgb,var(--fg) 6%,transparent)}.dash-tabs button[aria-selected=true]{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:600}.dash-user{margin-left:auto;display:flex;align-items:center;gap:10px}.dash-panel{max-width:1100px;margin:24px auto;padding:0 16px 60px}.card{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:20px 24px}.card.narrow{max-width:460px}.card h2{margin:0 0 14px;font-size:18px;color:var(--heading)}.card h3{margin:22px 0 8px;font-size:15px}.card form label,.dlg label{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;font-size:14px}.card form label.inline,.dlg label.inline,.opts label.inline{flex-direction:row;align-items:center;gap:6px}.dropzone{border:2px dashed var(--border);border-radius:12px;padding:28px 20px;text-align:center;transition:.15s}.dropzone.over,.dropzone:focus-visible{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent);outline:none}.dropzone p{margin:6px 0}.paste-box{margin:14px 0}.paste-box summary{cursor:pointer;color:var(--accent)}.paste-box textarea{width:100%;margin-top:8px;font-family:var(--font-code);resize:vertical}.picked{margin:10px 0;font-size:14px}.picked p{margin:4px 0}.missing{margin:4px 0 0;padding-left:1.4em;font-size:13px;max-height:160px;overflow:auto}.opts{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;margin:14px 0}.opts label{display:flex;flex-direction:column;gap:4px;margin:0!important;font-size:14px}.result-box{margin-top:12px;padding:14px 16px;border-radius:10px;border:1px solid #2e8b57;background:color-mix(in srgb,#2e8b57 8%,transparent)}.result-box p{margin:0 0 8px}.url-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.url-row input{flex:1;min-width:240px;font-family:var(--font-code)}.table-scroll{overflow-x:auto}.list-table{width:100%;border-collapse:collapse;font-size:14px}.list-table th,.list-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.list-table th{color:var(--muted);font-weight:500}.list-table td:first-child{white-space:normal;min-width:160px}.list-table .ops{display:flex;gap:6px;flex-wrap:wrap}.list-table .ops button{padding:3px 10px;font-size:13px}.api-demo{background:var(--code-bg);padding:12px 14px;border-radius:8px;overflow-x:auto;font-size:12.5px}.dlg{border:1px solid var(--border);border-radius:12px;padding:20px 24px;background:var(--bg);color:var(--fg);width:min(440px,92vw);box-shadow:var(--shadow)}.dlg::backdrop{background:#00000059}.dlg h3{margin:0 0 14px}.dlg fieldset{border:1px solid var(--border);border-radius:8px;padding:8px 12px 12px;margin:0 0 12px}.dlg fieldset label{margin-bottom:6px}.dlg-btns{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.login-box{max-width:360px;margin:14vh auto 0;padding:28px;background:var(--bg);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.login-box h1{display:flex;align-items:center;gap:10px;justify-content:center;font-size:20px;margin:0 0 22px;color:var(--heading)}.login-box label{display:flex;flex-direction:column;gap:4px;margin-bottom:14px;font-size:14px}.login-box input{padding:9px 12px}.login-box button{width:100%;padding:10px}.form-err{color:#d33;min-height:1.4em;margin:8px 0 0;font-size:13px}.login-box .hint{text-align:center;margin:4px 0 0}#toast{z-index:1000}
