:root{--bg:#fff;--bg-sidebar:#f7f7f5;--bg-hover:#37352f0f;--bg-active:#37352f1a;--fg:#37352f;--muted:#787774;--faint:#b4b4b0;--border:#e9e9e7;--accent:#2383e2;--accent-soft:#2383e224;--mark:#ffd40066;--code-bg:#f7f6f3;--danger:#d44c47;--shadow:0 8px 32px #0f0f0f29, 0 0 0 1px #0f0f0f0d;--c-gray:#787774;--bg-gray:#f1f1ef;--c-brown:#9f6b53;--bg-brown:#f4eeee;--c-orange:#d9730d;--bg-orange:#fbecdd;--c-yellow:#cb912f;--bg-yellow:#fbf3db;--c-green:#448361;--bg-green:#edf3ec;--c-blue:#337ea9;--bg-blue:#e7f3f8;--c-purple:#9065b0;--bg-purple:#f6f3f9;--c-pink:#c14c8a;--bg-pink:#faf1f5;--c-red:#d44c47;--bg-red:#fdebec;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#191919;--bg-sidebar:#202020;--bg-hover:#ffffff0e;--bg-active:#ffffff1a;--fg:#e6e6e5;--muted:#9b9a97;--faint:#5a5a58;--border:#2f2f2f;--accent:#529cca;--accent-soft:#529cca33;--mark:#ffd40047;--code-bg:#252525;--danger:#e06c66;--shadow:0 8px 32px #00000080, 0 0 0 1px #ffffff0f;--c-gray:#9b9b9b;--bg-gray:#2f2f2f;--c-brown:#ba856f;--bg-brown:#4a3228;--c-orange:#c77d48;--bg-orange:#5c3b23;--c-yellow:#ca984d;--bg-yellow:#564328;--c-green:#529e72;--bg-green:#243d30;--c-blue:#5e87c9;--bg-blue:#143a4e;--c-purple:#9d68d3;--bg-purple:#3c2d49;--c-pink:#d15796;--bg-pink:#4e2c3c;--c-red:#df5452;--bg-red:#522e2a;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--fg);font:16px/1.6 var(--app-font,-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif);margin:0}.font-preview{border:1px solid var(--border);border-radius:6px;margin:12px 0;padding:16px}button{font:inherit;border:1px solid var(--border);color:inherit;cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:13px}button:hover{background:var(--bg-hover)}mark{background:var(--mark);color:inherit;border-radius:2px}.ProseMirror{white-space:pre-wrap;word-wrap:break-word;outline:none;min-height:100%}.ProseMirror-hideselection ::selection{background:0 0}.ProseMirror-hideselection{caret-color:#0000}.ProseMirror .ProseMirror-selectednode,.ProseMirror .block-selected{background:var(--accent-soft);border-radius:4px;outline:none}.ProseMirror hr.ProseMirror-selectednode,.ProseMirror hr.block-selected{border-top-color:var(--accent);background:0 0}[data-color=gray]{color:var(--c-gray)}[data-bg=gray]{--hl:var(--bg-gray);background:var(--hl)}[data-color=brown]{color:var(--c-brown)}[data-bg=brown]{--hl:var(--bg-brown);background:var(--hl)}[data-color=orange]{color:var(--c-orange)}[data-bg=orange]{--hl:var(--bg-orange);background:var(--hl)}[data-color=yellow]{color:var(--c-yellow)}[data-bg=yellow]{--hl:var(--bg-yellow);background:var(--hl)}[data-color=green]{color:var(--c-green)}[data-bg=green]{--hl:var(--bg-green);background:var(--hl)}[data-color=blue]{color:var(--c-blue)}[data-bg=blue]{--hl:var(--bg-blue);background:var(--hl)}[data-color=purple]{color:var(--c-purple)}[data-bg=purple]{--hl:var(--bg-purple);background:var(--hl)}[data-color=pink]{color:var(--c-pink)}[data-bg=pink]{--hl:var(--bg-pink);background:var(--hl)}[data-color=red]{color:var(--c-red)}[data-bg=red]{--hl:var(--bg-red);background:var(--hl)}.ProseMirror [data-bg]{border-radius:3px}.ProseMirror li.ProseMirror-selectednode,.ProseMirror li.block-selected{background:0 0;position:relative}.ProseMirror li.ProseMirror-selectednode:after,.ProseMirror li.block-selected:after{content:"";background:var(--accent-soft);pointer-events:none;border-radius:4px;position:absolute;inset:0 0 0 -24px}.ProseMirror p{margin:0}.ProseMirror h1{margin:24px 0 4px;font-size:30px;line-height:1.3}.ProseMirror h2{margin:20px 0 4px;font-size:24px;line-height:1.3}.ProseMirror h3{margin:16px 0 4px;font-size:20px;line-height:1.3}.ProseMirror blockquote{border-left:3px solid;margin:4px 0;padding-left:14px}.ProseMirror pre{background:var(--code-bg);white-space:pre-wrap;border-radius:4px;padding:12px 16px;font:14px/1.5 ui-monospace,Cascadia Code,Consolas,monospace}.ProseMirror code{background:var(--code-bg);color:var(--danger);border-radius:4px;padding:1px 4px;font-size:85%}.ProseMirror pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.ProseMirror hr{border:none;border-top:1px solid var(--border);margin:12px 0}.ProseMirror ul,.ProseMirror ol{margin:0;padding-left:24px}.ProseMirror>*+:not(h1,h2,h3),.ProseMirror li+li,.ProseMirror li>*+:not(h1,h2,h3),.ProseMirror blockquote>*+:not(h1,h2,h3){margin-top:8px}.ProseMirror li[data-checked]{list-style:none;position:relative}.ProseMirror li[data-checked]:before{content:"";cursor:pointer;border:1.5px solid;border-radius:3px;width:14px;height:14px;position:absolute;top:5px;left:-22px}.ProseMirror li[data-checked=true]:before{background:var(--accent);border-color:var(--accent)}.ProseMirror li[data-checked=true]>p{color:var(--muted);text-decoration:line-through}.ProseMirror a{color:inherit;text-decoration:underline;text-decoration-color:var(--muted)}.ProseMirror .flash{border-radius:3px;animation:1.6s ease-out flash}@keyframes flash{0%{background:var(--mark)}to{background:0 0}}.ProseMirror .page-ref{color:var(--fg);border-bottom:1px solid var(--faint);cursor:pointer;border-radius:2px;padding:0 1px;text-decoration:none}.ProseMirror .page-ref:before{content:"↗ ";color:var(--muted);font-size:.85em}.ProseMirror .page-ref:hover{background:var(--bg-hover)}.ProseMirror .page-ref.block-ref{color:var(--muted)}.ProseMirror .page-ref.missing{color:var(--faint);text-decoration:line-through}.ProseMirror .page-ref.selected{background:var(--accent-soft)}.splash{height:100%;color:var(--muted);place-items:center;display:grid}.splash-error{text-align:center;max-width:480px;padding:24px}.splash-error p{color:var(--muted);font-size:14px}.layout{grid-template-columns:260px 1fr;height:100%;display:grid}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);user-select:none;flex-direction:column;min-height:0;font-size:14px;display:flex}.sidebar-head{padding:14px 16px 6px}.brand{font-weight:600}.sidebar-search{color:var(--muted);text-align:left;border:none;justify-content:space-between;align-items:center;margin:4px 8px 8px;padding:4px 8px;font-size:14px;display:flex}.sidebar-search kbd{color:var(--faint);font:11px ui-monospace,monospace}.tree{flex:1;padding:0 4px 24px;overflow-y:auto}.tree-item{cursor:pointer;height:30px;color:var(--fg);border-radius:4px;align-items:center;gap:2px;padding-right:4px;display:flex}.tree-item:hover{background:var(--bg-hover)}.tree-item.active{background:var(--bg-active);font-weight:500}.tree-item.drop-inside{background:var(--accent-soft)}.tree-item.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.tree-item.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.tree-chevron{width:20px;height:20px;color:var(--muted);border:none;flex-shrink:0;place-items:center;padding:0;display:grid}.tree-chevron svg{transition:transform .12s}.tree-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.untitled{color:var(--muted)}.tree-actions{gap:2px;display:none}.tree-item:hover .tree-actions{display:flex}.tree-actions button{height:22px;color:var(--muted);border:none;padding:0 6px;font-size:14px}.tree-actions button.danger{color:var(--danger);font-size:12px}.tree-new{color:var(--muted);text-align:left;border:none;width:calc(100% - 8px);margin:6px 4px;padding:4px 8px;font-size:14px}.main{min-width:0;position:relative;overflow-y:auto}.menu-button{z-index:5;border:none;padding:6px;display:none;position:fixed;top:8px;left:8px}.banner{background:var(--mark);border-radius:6px;margin:12px 24px 0;padding:8px 12px;font-size:13px}.save-status{color:var(--muted);padding:6px 24px;font-size:12px}.save-error{color:var(--danger)}.backup-panel{text-align:left;font-size:14px}.backup-panel p{line-height:1.6}.backup-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.backup-path{overflow-wrap:anywhere;color:var(--muted)}.backup-list{max-height:260px;padding:0;list-style:none;overflow-y:auto}.backup-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.empty{text-align:center;height:100%;color:var(--muted);place-content:center;gap:12px;display:grid}.page{flex-direction:column;min-height:100%;display:flex}.page,.page-body,.page-editor,.page-editor .ProseMirror{cursor:text}.page-top,.page-footer,.tag-bar,.kind-badge{cursor:default}.breadcrumb{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;padding:10px 16px;font-size:13px;overflow:hidden}.breadcrumb button{color:inherit;border:none;padding:2px 4px;font-size:13px}.breadcrumb .sep{color:var(--faint);margin:0 2px}.page-body{flex-direction:column;flex:1;width:100%;max-width:760px;margin:0 auto;padding:48px 48px 30vh;display:flex}.page-title{color:inherit;background:0 0;border:none;outline:none;width:100%;margin-bottom:16px;padding:0;font-family:inherit;font-size:44px;font-weight:700;line-height:1.2}.page-title::placeholder{color:var(--faint)}.page-editor{flex:1;margin-left:-32px;padding-left:32px;position:relative}.block-handle{z-index:5;width:18px;height:24px;color:var(--faint);letter-spacing:-4px;box-sizing:border-box;cursor:grab;user-select:none;border-radius:4px;justify-content:center;align-items:center;padding-right:4px;font-size:14px;display:flex;position:absolute}.block-handle:hover{background:var(--bg-hover);color:var(--muted)}.block-handle:active{cursor:grabbing}.block-handle[hidden]{display:none}.block-drop-line{z-index:5;background:var(--accent);pointer-events:none;border-radius:1px;height:2px;position:absolute}.block-drop-line[hidden]{display:none}.block-select-box{z-index:50;background:var(--accent-soft);border:1px solid var(--accent);pointer-events:none;border-radius:2px;position:fixed}.page-editor .ProseMirror{min-height:200px}.page-tag .page-editor{flex:0}.page-tag .page-editor .ProseMirror{min-height:56px}.page-tag .page-footer{margin-top:24px}.palette-backdrop{z-index:20;background:#0f0f0f59;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}.palette{background:var(--bg);width:min(640px,100vw - 32px);max-height:70vh;box-shadow:var(--shadow);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.palette-input{color:inherit;font:inherit;border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;padding:16px 18px;font-size:17px}.palette-list{margin:0;padding:6px;list-style:none;overflow-y:auto}.palette-list li{cursor:pointer;border-radius:6px;padding:8px 12px}.palette-list li.selected{background:var(--bg-hover)}.palette-title{font-size:15px}.palette-snippet{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:13px;overflow:hidden}.palette-empty{color:var(--muted);cursor:default}.sidebar-scrim{display:none}@media (width<=768px){.layout{grid-template-columns:1fr}.sidebar{z-index:10;width:min(300px,85vw);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.sidebar-open .sidebar{box-shadow:var(--shadow);transform:none}.sidebar-open .sidebar-scrim{z-index:9;background:#0f0f0f4d;display:block;position:fixed;inset:0}.menu-button{display:block}.tree-actions{display:flex}.breadcrumb{padding-left:48px}.page-body{padding:24px 16px 30vh}.page-title{font-size:34px}}.tree-section{color:var(--muted);margin:12px 8px 2px;font-size:12px;font-weight:500}.tree-section:first-child{margin-top:4px}.tree-hash{color:var(--muted);margin-right:2px}.kind-badge{color:var(--muted);margin-bottom:4px;font-size:12px}.tag-bar{flex-wrap:wrap;align-items:center;gap:6px;min-height:26px;margin:-4px 0 20px;display:flex}.tag-chip{background:var(--bg-hover);border-radius:4px;align-items:center;font-size:13px;display:inline-flex}.tag-chip button{border:none;padding:2px 6px;font-size:13px}.tag-name{color:var(--fg)}.tag-remove{color:var(--muted);padding-left:0!important}.tag-add{color:var(--faint);border:none;padding:2px 6px;font-size:13px}.tag-bar:hover .tag-add{color:var(--muted)}.tag-adder{position:relative}.tag-input{border:1px solid var(--border);color:inherit;font:inherit;background:0 0;border-radius:4px;outline:none;width:140px;padding:2px 6px;font-size:13px}.tag-suggest{z-index:15;min-width:200px;position:absolute;top:calc(100% + 4px);left:0}.popover-backdrop{z-index:20;position:fixed;inset:0}.popover{background:var(--bg);box-shadow:var(--shadow);border-radius:8px;position:fixed;overflow:hidden}.ref-picker{flex-direction:column;width:min(420px,100vw - 16px);max-height:360px;display:flex}.popover-input{color:inherit;font:inherit;border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;padding:10px 12px;font-size:14px}.popover-list{margin:0;padding:4px;font-size:14px;list-style:none;overflow-y:auto}.tag-suggest.popover{position:absolute}.popover-list li{cursor:pointer;border-radius:4px;align-items:baseline;gap:8px;padding:6px 8px;display:flex;overflow:hidden}.popover-list li.selected{background:var(--bg-hover)}.popover-empty{color:var(--muted);cursor:default!important}.opt-kind{text-align:center;width:16px;color:var(--muted);flex-shrink:0;font-size:12px}.opt-snippet{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px;overflow:hidden}.opt-page{color:var(--fg)}.selection-toolbar{z-index:20;overflow:visible}.toolbar-row{align-items:center;gap:2px;padding:4px;display:flex}.toolbar-row button{min-width:28px;height:28px;color:var(--fg);border:none;border-radius:4px;justify-content:center;align-items:center;gap:2px;padding:0 6px;font-size:14px;display:inline-flex}.toolbar-row button.on{color:var(--accent);background:var(--accent-soft)}.tb-strong{font-weight:700}.tb-em{font-family:Georgia,serif;font-style:italic}.tb-strike{text-decoration:line-through}.tb-code{font:12px ui-monospace,monospace}.tb-color>span:first-child{border-radius:3px;padding:0 3px;font-weight:600}.tb-color .caret{color:var(--muted);font-size:9px}.toolbar-sep{background:var(--border);width:1px;height:18px;margin:0 4px}.color-palette{border-top:1px solid var(--border);padding:6px 8px 8px}.color-label{color:var(--muted);margin:4px 0;font-size:12px}.color-row{grid-template-columns:repeat(10,24px);gap:4px;display:grid}.color-swatch{border:1px solid var(--border);border-radius:4px;width:24px;height:24px;padding:0;font-size:13px;font-weight:600}.color-swatch[data-bg]:hover{background:var(--hl);filter:brightness(.96)}.color-swatch.on{box-shadow:0 0 0 2px var(--accent);border-color:#0000}.slash-menu{z-index:20;flex-direction:column;width:min(280px,100vw - 16px);max-height:320px;display:flex}.slash-menu .popover-list li{align-items:center}.slash-icon{border:1px solid var(--border);width:28px;height:22px;color:var(--muted);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.slash-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.slash-hint{color:var(--faint);flex-shrink:0;font:12px ui-monospace,monospace}.page-footer{margin-top:48px;font-size:14px}.page-footer section+section{margin-top:24px}.page-footer h4{color:var(--muted);border-bottom:1px solid var(--border);margin:0 0 8px;padding-bottom:6px;font-size:13px;font-weight:500}.muted{color:var(--muted)}.link-list{margin:0;padding:0;list-style:none}.link-list button{text-align:left;white-space:nowrap;text-overflow:ellipsis;border:none;width:100%;padding:3px 6px;font-size:14px;overflow:hidden}.backlink-group{margin-bottom:10px}.backlink-page{border:none;padding:3px 6px;font-size:14px;font-weight:500}.backlink-group .link-list{padding-left:12px}.backlink-group .link-list button{color:var(--muted)}.palette-command{justify-content:space-between;align-items:center;font-size:15px;display:flex}.palette-command kbd{color:var(--faint);font:11px ui-monospace,monospace}.toast{z-index:30;background:var(--fg);color:var(--bg);box-shadow:var(--shadow);pointer-events:none;border-radius:6px;padding:8px 14px;font-size:13px;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.sync-status{border:none;border-top:1px solid var(--border);color:var(--muted);text-align:left;border-radius:0;align-items:center;gap:8px;width:100%;margin:0;padding:10px 16px;font-size:12px;display:flex}.sync-dot{background:var(--faint);border-radius:50%;flex-shrink:0;width:7px;height:7px}.sync-synced .sync-dot{background:#3aa76d}.sync-syncing .sync-dot,.sync-connecting .sync-dot{background:var(--accent);animation:1s ease-in-out infinite alternate pulse}.sync-offline .sync-dot{background:#d9a43b}.sync-error .sync-dot{background:var(--danger)}.sync-error{color:var(--danger)}@keyframes pulse{0%{opacity:1}to{opacity:.3}}.dialog{background:var(--bg);width:min(420px,100vw - 32px);box-shadow:var(--shadow);border-radius:10px;overflow:hidden}.dialog-head{justify-content:space-between;align-items:center;padding:14px 18px 0;display:flex}.dialog-close{color:var(--muted);border:none;padding:0 6px;font-size:18px}.dialog-body{flex-direction:column;gap:12px;padding:12px 18px 18px;font-size:14px;display:flex}.dialog-body label{color:var(--muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.dialog-body input{font:inherit;color:var(--fg);border:1px solid var(--border);background:0 0;border-radius:6px;outline:none;padding:7px 10px;font-size:14px}.dialog-body input:focus{border-color:var(--accent)}.dialog-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:4px;display:flex}.dialog-actions .link{color:var(--accent);border:none;margin-right:auto;padding:4px 0}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:6px 16px}button.primary:hover{filter:brightness(1.05);background:var(--accent)}button.danger{color:var(--danger)}button:disabled{opacity:.6;cursor:default}.form-error{color:var(--danger);margin:0;font-size:13px}.small{margin:0;font-size:12px}.kv{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;display:grid}.kv dt{color:var(--muted)}.kv dd{word-break:break-all;margin:0}.page-top{align-items:center;display:flex}.page-top .breadcrumb{flex:1;min-width:0}.page-actions{gap:4px;padding-right:12px;display:flex}.page-actions button{color:var(--muted);border:none;font-size:13px}.history-backdrop{align-items:center;padding-top:0}.history{background:var(--bg);width:min(1080px,100vw - 32px);height:min(760px,100vh - 64px);box-shadow:var(--shadow);border-radius:10px;display:flex;overflow:hidden}.history-list{border-right:1px solid var(--border);background:var(--bg-sidebar);flex-direction:column;width:260px;display:flex}.history-save{border-bottom:1px solid var(--border);flex-direction:column;gap:6px;padding:12px;display:flex}.history-save input{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:6px;outline:none;padding:5px 8px;font-size:13px}.history-list ul{flex:1;margin:0;padding:6px;list-style:none;overflow-y:auto}.history-list li{cursor:pointer;border-radius:6px;padding:8px 10px}.history-list li:hover{background:var(--bg-hover)}.history-list li.selected{background:var(--bg-active)}.history-name{font-size:14px}.history-time{color:var(--muted);font-size:12px}.history-main{flex-direction:column;flex:1;min-width:0;display:flex}.history-toolbar{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 14px;font-size:13px;display:flex}.history-toolbar .spacer{flex:1}.segmented{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.segmented button{border:none;border-radius:0}.segmented button.on{background:var(--bg-active)}.history-diff{flex:1;padding:24px 40px;overflow-y:auto}.diff-block{border-radius:4px;align-items:baseline;gap:8px;margin:2px 0;padding:2px 6px;line-height:1.6;display:flex}.diff-text{white-space:pre-wrap;word-break:break-word;flex:1}.diff-marker{color:var(--muted);text-align:center;flex-shrink:0;width:16px}.diff-block.k-heading1{font-size:26px;font-weight:700}.diff-block.k-heading2{font-size:21px;font-weight:700}.diff-block.k-heading3{font-size:18px;font-weight:600}.diff-block.k-code{background:var(--code-bg);font-family:ui-monospace,Consolas,monospace;font-size:14px}.diff-block.k-quote{color:var(--muted)}.diff-block.k-hr hr{border:none;border-top:1px solid var(--border);flex:1}.diff-block.c-added{background:#3aa76d24}.diff-block.c-removed{color:var(--muted);background:#d44c471f;text-decoration:line-through}.diff-block.c-moved{background:var(--accent-soft)}.diff ins{background:#3aa76d47;border-radius:2px;text-decoration:none}.diff del{color:var(--muted);background:#d44c4738;border-radius:2px}.diff-badge{color:var(--accent);border:1px solid var(--accent);border-radius:3px;flex-shrink:0;padding:0 4px;font-size:11px}@media (width<=768px){.history{flex-direction:column}.history-list{border-right:none;border-bottom:1px solid var(--border);width:auto;max-height:40%}.history-diff{padding:16px}}.page-props{grid-template-columns:max-content 1fr;gap:2px 16px;margin:-8px 0 20px;font-size:14px;display:grid}.prop-row{display:contents}.prop-name{color:var(--muted);white-space:nowrap;padding:4px 0}.prop-value{align-items:center;min-width:0;display:flex}.field-input{font:inherit;color:var(--fg);background:0 0;border:1px solid #0000;border-radius:4px;outline:none;width:100%;min-width:0;padding:3px 6px;font-size:14px}.field-input:hover{background:var(--bg-hover)}.field-input:focus{border-color:var(--accent);background:var(--bg)}.field-input::placeholder{color:var(--faint)}select.field-input{cursor:pointer;width:auto;max-width:100%}.field-check{cursor:pointer;width:16px;height:16px;margin:6px}.field-url{align-items:center;gap:2px;width:100%;display:flex}.field-url a,.field-open{color:var(--muted);border:none;padding:0 4px;text-decoration:none}.field-multi{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.field-add{width:auto;color:var(--muted)}.option-chip{background:var(--accent-soft);white-space:nowrap;border-radius:4px;align-items:center;padding:0 2px 0 6px;font-size:13px;display:inline-flex}.option-chip button{color:var(--muted);border:none;padding:0 4px;font-size:13px}.field-new{color:var(--muted);border:none;padding:4px 0}.record-table h4{margin-bottom:0}.table-scroll{overflow-x:auto}.record-grid{border-collapse:collapse;width:100%;font-size:14px}.record-grid th,.record-grid td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;min-width:120px;padding:2px 4px}.record-grid th button{color:var(--muted);white-space:nowrap;border:none;padding:6px 2px;font-size:13px;font-weight:500}.cell-title{min-width:180px}.cell-title button{text-align:left;border:none;padding:4px 2px;font-size:14px;font-weight:500}.record-new{font:inherit;color:var(--fg);background:0 0;border:none;outline:none;width:100%;padding:6px 2px;font-size:14px}.record-new::placeholder{color:var(--faint)}.ProseMirror .query-view{white-space:normal;margin:12px 0}.qv{border:1px solid var(--border);cursor:default;border-radius:8px;padding:8px 10px;font-size:14px}.qv-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.qv-head .spacer{flex:1}.qv-head select,.qv-filter-row select,.qv-filter-row input,.qv-groupby select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:2px 4px;font-size:13px}.qv-tag{border:none;padding:2px 4px;font-size:15px;font-weight:600}.qv-filter{color:var(--muted);border:none}.qv-filter.on{color:var(--accent)}.qv-remove{color:var(--muted);border:none;padding:0 6px}.qv-filters{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;margin-bottom:6px;padding:6px 0 8px;display:flex}.qv-filter-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.qv-filter-row input{width:140px}.qv-empty{padding:8px 0}.qv-groupby{color:var(--muted);align-items:center;gap:6px;margin-bottom:6px;font-size:13px;display:flex}.qv-list{margin:0;padding:0;list-style:none}.qv-list li{border-bottom:1px solid var(--border);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;padding:5px 4px;overflow:hidden}.qv-list li:hover{background:var(--bg-hover)}.qv-list-title{font-weight:500}.qv-list .qv-list-new{cursor:default;border-bottom:none}.qv-list-new:hover{background:0 0!important}.board{align-items:flex-start;gap:10px;padding-bottom:4px;display:flex;overflow-x:auto}.board-col{background:var(--bg-sidebar);border-radius:6px;flex-direction:column;flex:0 0 220px;gap:6px;min-height:60px;padding:6px;display:flex}.board-col.over{outline:2px solid var(--accent)}.board-col-head{padding:2px 4px;font-size:13px;font-weight:500}.board-card{background:var(--bg);border:1px solid var(--border);cursor:grab;border-radius:6px;padding:6px 8px;box-shadow:0 1px 2px #0f0f0f0f}.board-card:hover{border-color:var(--faint)}.board-title{font-weight:500}.board-field{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.board-col .record-new{padding:4px;font-size:13px}.ProseMirror .record-badge{background:var(--accent-soft);color:var(--accent);vertical-align:1px;cursor:pointer;user-select:none;white-space:nowrap;border-radius:4px;margin-left:8px;padding:0 6px;font-size:12px;line-height:20px;display:inline-block}.ProseMirror .record-badge:hover{filter:brightness(.95)}.record-popover{width:min(380px,100vw - 16px);max-height:60vh;padding:10px 12px;overflow-y:auto}.record-popover section+section{border-top:1px solid var(--border);margin-top:10px;padding-top:8px}.record-popover-head{align-items:center;margin-bottom:4px;display:flex}.record-popover-head .spacer{flex:1}.record-popover .prop-row{grid-template-columns:90px 1fr;align-items:center;gap:8px;font-size:14px;display:grid}.small-button{border:none;padding:2px 6px;font-size:12px}.cell-kind{color:var(--faint);margin-left:6px;font-size:12px;font-weight:400}.field-kind{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 8px;font-size:13px;display:flex}.page-props:empty{display:none}.sidebar-review{color:var(--muted);text-align:left;border:none;justify-content:space-between;align-items:center;margin:-4px 8px 8px;padding:4px 8px;font-size:14px;display:flex}.review-count{background:var(--accent);color:#fff;text-align:center;border-radius:10px;min-width:18px;padding:0 6px;font-size:11px;line-height:18px}.review{background:var(--bg);width:min(640px,100vw - 32px);min-height:420px;box-shadow:var(--shadow);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.review-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.review-head .spacer{flex:1}.review-card{flex-direction:column;flex:1;gap:12px;max-height:60vh;padding:32px 36px;display:flex;overflow-y:auto}.review-front{word-break:break-word;font-size:28px;font-weight:600;line-height:1.3}.review-back{border-top:1px solid var(--border);flex-direction:column;gap:10px;margin:12px 0 0;padding-top:16px;display:flex}.review-back dt{color:var(--muted);font-size:12px}.review-back dd{white-space:pre-wrap;margin:2px 0 0;font-size:17px}.review-excerpt{color:var(--fg);border-left:3px solid var(--border);padding-left:12px;font-size:15px}.review-excerpt p{margin:0 0 6px}.review-open{color:var(--muted);border:none;align-self:flex-start;margin-top:auto;padding:2px 0;font-size:13px}.review-done{text-align:center;justify-content:center;align-items:center}.review-done .review-front{font-size:20px}.review-actions{border-top:1px solid var(--border);gap:8px;padding:12px 16px 16px;display:flex}.review-actions .flip{flex:1;padding:10px;font-size:15px}.review-actions kbd{opacity:.6;margin-left:6px;font:11px ui-monospace,monospace}.rate{flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;font-size:14px;display:flex}.rate-next{color:var(--muted);font-size:12px}.rate-1{border-color:#d44c4780}.rate-2{border-color:#d9a43b99}.rate-3{border-color:#3aa76d99}.rate-4{border-color:#2383e299}.memory-settings{margin-bottom:8px}.memory-back{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0 0 8px;font-size:13px;display:flex}.memory-back label{color:var(--fg);align-items:center;gap:4px;display:inline-flex}.memory-info .prop-value{padding:4px 6px;font-size:13px}.sidebar-footer{border-top:1px solid var(--border);display:flex}.sidebar-footer .sync-status{border-top:none;flex:1;min-width:0}.ai-status{color:var(--faint);white-space:nowrap;border:none;border-radius:0;padding:10px 12px;font-size:12px}.ai-status.on{color:var(--accent)}.tag-ai .tag-name:after{content:"✦";color:var(--accent);vertical-align:super;margin-left:3px;font-size:10px}.ai-button{color:var(--accent)}.ai-fill{align-items:center;gap:8px;display:inline-flex}.record-popover .ai-fill{margin-top:8px}.dialog-wide{width:min(520px,100vw - 32px);max-height:calc(100vh - 64px);overflow:auto}.dialog-body select{font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font-size:14px}.dialog-body label.check{color:var(--fg);flex-direction:row;align-items:center;gap:8px;font-size:14px}.dialog-body input[type=range]{border:none;padding:0}.ai-activity{border-top:1px solid var(--border);padding-top:12px}.ai-usage{align-items:center;gap:8px;display:flex}.ai-usage .spacer{flex:1}.ai-log{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.ai-log li{align-items:baseline;gap:8px;min-width:0;display:flex}.ai-log .link{color:var(--accent);white-space:nowrap;text-overflow:ellipsis;border:none;max-width:45%;padding:0;overflow:hidden}.ai-fill-setting{cursor:pointer}.dialog-tabs{border-bottom:1px solid var(--border);gap:4px;padding:10px 18px 0;display:flex}.dialog-tabs button{color:var(--muted);border:none;border-bottom:2px solid #0000;border-radius:0;padding:6px 10px;font-size:13px}.dialog-tabs button.on{color:var(--fg);border-bottom-color:var(--accent)}.copy-row{background:var(--bg-hover);border-radius:6px;align-items:center;gap:8px;padding:6px 8px;display:flex}.copy-row code{overflow-wrap:anywhere;flex:1;min-width:0;font-size:12px}.notice{border:1px solid var(--accent);border-radius:6px;flex-direction:column;gap:6px;padding:8px 10px;display:flex}.api-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.api-list li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:8px;font-size:14px;display:flex}.api-list li>div{min-width:0}.break{overflow-wrap:anywhere}.api-form{flex-direction:column;gap:10px;display:flex}.api-form fieldset{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:4px;margin:0;padding:6px 10px 8px;display:flex}.api-form legend{color:var(--muted);padding:0 4px;font-size:12px}.api-form label.check,.tag-checks label.check{color:var(--fg);flex-direction:row;align-items:center;gap:6px;font-size:13px}.tag-checks{flex-wrap:wrap;gap:4px 14px;display:flex}.audit-list{flex-direction:column;gap:4px;max-height:50vh;margin:0;padding:0;font-size:13px;list-style:none;display:flex;overflow:auto}.audit-list li{grid-template-columns:150px 1fr 1fr;gap:8px;display:grid}.audit-list li.failed span:last-child{color:var(--danger)}@media (width<=520px){.audit-list li{grid-template-columns:1fr;gap:0}}.plugin-overlay{z-index:40;pointer-events:none;position:fixed;inset:0}.plugin-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.plugin-list li{flex-direction:column;gap:8px;display:flex}.plugin-head{align-items:center;gap:8px;display:flex}.plugin-head strong{flex:1}.plugin-settings{flex-direction:column;gap:8px;padding-left:2px;display:flex}.rule-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.rule-actions label.check{flex-direction:row;align-items:center;gap:4px}.api-form .segmented{gap:4px;margin:2px 0 4px;display:inline-flex}.api-form .segmented button{padding:3px 10px;font-size:13px}.api-form .segmented button.on{border-color:var(--accent);color:var(--accent)}.api-form input[type=time]{width:120px}.dialog-actions .link:has(+.link){margin-right:0}.dialog-actions .link+.link{margin-left:12px}.review-setting{align-items:center;gap:6px;margin-top:12px;display:inline-flex}.review-setting input{width:64px;font:inherit;color:var(--fg);border:1px solid var(--border);background:0 0;border-radius:4px;padding:2px 6px}.calendar{font-size:13px}.calendar-head{align-items:center;gap:6px;margin:6px 0;display:flex}.calendar-head .spacer{flex:1}.calendar-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekday{color:var(--muted);border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:4px 6px;font-size:12px}.calendar-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:2px;min-width:0;min-height:76px;padding:3px 4px;display:flex}.calendar-cell.other{background:var(--bg-hover);color:var(--muted)}.calendar-cell.today .calendar-day span{background:var(--accent);color:#fff;border-radius:10px;padding:0 6px}.calendar-cell.over{box-shadow:inset 0 0 0 2px var(--accent)}.calendar-day{justify-content:space-between;align-items:center;font-size:12px;display:flex}.calendar-add{color:var(--muted);opacity:0;border:none;padding:0 4px;font-size:13px}.calendar-cell:hover .calendar-add{opacity:1}.calendar-item{background:var(--accent-soft);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:3px;padding:1px 4px;display:block;overflow:hidden}.calendar-undated{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:8px;display:flex}.calendar-undated .calendar-item{max-width:200px;display:inline-block}@media (width<=600px){.calendar-cell{min-height:52px}.calendar-item{font-size:11px}}.local-mcp{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.local-mcp>label.check{color:var(--fg);flex-flow:wrap;align-items:center;gap:8px}.config-snippet{white-space:pre-wrap;overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:11px}.port-input{width:80px}.shortcut-group h4{color:var(--muted);margin:0 0 6px;font-size:12px;font-weight:500}.shortcut-row{border-top:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.shortcut-info{flex-direction:column;gap:2px;min-width:0;display:flex}.shortcut-value{flex-shrink:0;align-items:center;gap:4px;display:flex}.shortcut-key{min-width:96px;padding:4px 10px;font-size:13px}.shortcut-key kbd{font:12px ui-monospace,monospace}.shortcut-key.recording{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}.shortcut-recorder{flex-direction:column;align-items:flex-end;gap:4px;display:flex}@media (width<=480px){.shortcut-row{flex-direction:column}.shortcut-value{align-self:flex-end}}.help-hint{vertical-align:middle;margin-left:5px;font-weight:400;display:inline-flex}button.help-trigger{border:1px solid var(--faint);width:16px;min-width:16px;height:16px;color:var(--muted);cursor:help;background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;font:11px/1 system-ui,sans-serif;display:inline-flex}button.help-trigger:hover,button.help-trigger:focus-visible{color:var(--fg);border-color:var(--fg);background:var(--bg-hover)}.help-tooltip{z-index:1001;border:1px solid var(--border);width:max-content;max-width:min(330px,100vw - 16px);max-height:calc(100dvh - 16px);box-shadow:var(--shadow);background:var(--bg);color:var(--fg);white-space:normal;overflow-wrap:anywhere;border-radius:7px;padding:9px 12px;font-size:12px;font-weight:400;line-height:1.65;position:fixed;overflow-y:auto}.anchored-popover{z-index:1000;background:var(--bg);width:min(300px,100vw - 16px);max-height:calc(100dvh - 16px);color:var(--fg);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:9px;padding:8px;font-size:13px;line-height:1.5;position:fixed;overflow-y:auto}.anchored-popover-head{color:var(--muted);justify-content:space-between;align-items:center;padding:2px 4px 8px;display:flex}.anchored-popover-head button{border:0;padding:0 6px}.anchored-popover input:not([type=checkbox]),.anchored-popover select{width:100%;min-width:0;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:6px 8px}.anchored-popover :focus-visible,.column-trigger:focus-visible,.column-add:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field-toolbar{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:4px 0 8px;display:flex}.page-footer .field-toolbar h4{border:none;align-items:center;margin:0;padding:0;display:flex}.field-toolbar .spacer{flex:1}.tag-settings-trigger{color:var(--muted);border:none;font-size:13px}.tag-settings{width:min(340px,100vw - 16px);padding:12px}.tag-settings .field-kind{justify-content:space-between;align-items:center;margin:0;padding:10px 0}.tag-settings .ai-fill-setting{justify-content:flex-start;gap:0}.tag-settings .memory-settings{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.tag-settings .memory-back{padding-bottom:10px}.tag-settings .check{margin:0}.record-grid th{border-right:1px solid var(--border)}.record-grid th .column-trigger{text-align:left;align-items:center;gap:5px;width:100%;padding:7px 4px;display:flex}.column-chevron{opacity:0;margin-left:auto}.column-trigger:hover .column-chevron,.column-trigger:focus-visible .column-chevron,.column-trigger[aria-expanded=true] .column-chevron{opacity:1}.record-grid .column-add-cell{border-right:none;width:36px;min-width:36px}.record-grid th .column-add{width:100%;font-size:18px}.column-label{color:var(--muted);flex-direction:column;gap:5px;margin:4px 4px 10px;display:flex}.column-label .help-hint{align-self:flex-start}.column-options{flex-direction:column;gap:6px;padding:4px;display:flex}.column-option{gap:4px;display:flex}.column-option button{border:none}.column-actions{border-top:1px solid var(--border);margin-top:6px;padding-top:4px}.column-actions>button{text-align:left;border:none;width:100%;padding:6px 8px;display:block}.column-actions>button[aria-pressed=true]{background:var(--bg-active)}.column-confirm,.column-inherited{padding:4px;font-size:12px}.column-confirm p,.column-inherited p{margin:4px 0 8px}.column-confirm button+button{margin-left:6px}
