.file-explorer{flex:1;position:relative;display:flex;flex-direction:column}.file-explorer-header{display:flex;align-items:center;padding:0 8px;border-bottom:1px solid var(--color-border);flex-shrink:0;font-size:12px;color:var(--color-text-muted);position:sticky;top:0;z-index:1;background:var(--sidebar-bg)}.file-explorer-tree{flex:1;overflow-y:auto;padding:4px 0}.file-explorer-footer{flex-shrink:0;border-top:1px solid var(--color-border);padding:var(--space-1) var(--space-2)}.file-explorer-footer__logout{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;opacity:.6}.file-explorer-footer__logout:hover{opacity:1;background:var(--color-hover)}.file-explorer-header__vault{display:flex;align-items:center;gap:5px;padding:8px 4px;font-weight:500;text-transform:none;letter-spacing:normal}.file-explorer-header__actions{display:flex;align-items:center;gap:2px;margin-left:auto}.file-explorer-header__action{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;color:var(--color-text-muted);border-radius:4px;cursor:pointer;transition:color .1s,background .1s}.file-explorer-header__action:hover{color:var(--color-text);background:#ebebeb}.tree-item{display:flex;align-items:center;gap:5px;width:100%;padding:2px 8px 2px 20px;font-size:12px;line-height:20px;color:#737373;text-align:left;text-decoration:none;border-radius:0;transition:background .1s}.tree-item:hover{background:#ebebeb;color:var(--color-text)}.tree-item--active{background:#ebebeb;color:var(--color-text);font-weight:var(--weight-medium)}.tree-item--directory{font-weight:var(--weight-medium);color:var(--color-text)}.tree-item__indent{display:inline-block;width:12px;flex-shrink:0}.tree-item__chevron{width:14px;height:14px;flex-shrink:0;transition:transform .15s;color:var(--color-text-muted)}.tree-item__chevron--open{transform:rotate(90deg)}.tree-item__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-collapsed{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-right:1px solid var(--color-border);background:var(--sidebar-bg);cursor:pointer;color:var(--color-text-muted)}.sidebar-collapsed:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.tree-item--inline-input{padding:0 var(--space-4)}.tree-item__input{flex:1;min-width:0;padding:1px 4px;font-size:12px;font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-accent);border-radius:var(--radius-sm);outline:none}.context-menu-overlay{position:fixed;inset:0;z-index:100}.context-menu{position:fixed;min-width:160px;padding:var(--space-1) 0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;z-index:101}.context-menu__item{display:block;width:100%;padding:4px 16px;font-size:12px;color:#737373;text-align:left;cursor:pointer;transition:background .1s,color .1s}.context-menu__item:hover{background:var(--color-surface-hover);color:var(--color-text)}.context-menu__item--danger{color:var(--color-danger)}.context-menu__item--danger:hover{background:var(--color-danger);color:#fff}.context-menu__separator{height:1px;margin:var(--space-1) 0;background:var(--color-border)}.dialog-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;z-index:200}.dialog{min-width:280px;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000026}.dialog__text{font-size:var(--text-base);color:var(--color-text);margin-bottom:var(--space-5)}.dialog__actions{display:flex;gap:var(--space-2);justify-content:flex-end}.dialog__btn{padding:var(--space-1) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast)}.dialog__btn--cancel{color:var(--color-text-secondary);background:var(--color-surface-hover)}.dialog__btn--cancel:hover{background:var(--color-surface-active)}.dialog__btn--danger{color:#fff;background:var(--color-danger)}.dialog__btn--danger:hover{background:#8b4c47}@media(max-width:768px){.tree-item{padding:2px 4px 2px 8px;font-size:13px;line-height:20px;min-height:30px}.tree-item__indent{width:8px}.tree-item--directory{padding-left:0}.tree-item__chevron{width:16px;height:16px}.file-explorer-header{padding:0 8px;min-height:36px}.file-explorer-header__action{width:32px;height:32px}.context-menu__item{padding:8px 16px;font-size:14px;min-height:36px}.dialog__btn{padding:var(--space-2) var(--space-4);font-size:var(--text-base);min-height:44px}}.editor-container{flex:1;overflow:hidden;display:flex;flex-direction:column;background:var(--editor-bg);position:relative}.editor-toolbar{position:absolute;top:var(--space-10);left:0;right:0;z-index:5;max-width:var(--editor-max-width);display:flex;justify-content:flex-end;gap:var(--space-1);padding-right:var(--space-6);opacity:0;transition:opacity var(--duration-normal);pointer-events:none}.editor-toolbar-btn{pointer-events:auto}.editor-container:hover .editor-toolbar{opacity:1}.editor-toolbar-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--gray-400);cursor:pointer;transition:color var(--duration-fast),background var(--duration-fast)}.editor-toolbar-btn:hover{color:var(--gray-600);background:var(--gray-150)}.editor-conflict-banner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-6);background:var(--banner-warning-bg);color:var(--color-text);font-size:var(--text-sm);border-bottom:1px solid var(--banner-warning-border)}.editor-conflict-dismiss{font-size:var(--text-xs);color:var(--color-text-secondary);text-decoration:underline;text-underline-offset:2px}.editor-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:var(--editor-font-size);letter-spacing:.01em}.cm-editor{height:100%;font-family:var(--editor-font);font-size:var(--editor-font-size);letter-spacing:var(--editor-letter-spacing);line-height:var(--editor-line-height);background:var(--editor-bg)}.cm-editor.cm-focused{outline:none}.cm-editor .cm-scroller{overflow:auto;padding:var(--space-10) var(--space-16) var(--space-10) var(--space-6);max-width:var(--editor-max-width)}.cm-editor .cm-content{padding:0 var(--space-12) 0 0;caret-color:var(--editor-cursor-color);font-family:var(--editor-font)}.cm-editor .cm-gutters{background:var(--editor-bg);border-right:none;color:var(--editor-gutter-color);padding-right:var(--space-3)}.cm-editor .cm-activeLine{background:transparent}.cm-editor .cm-cursor{border-left-color:var(--editor-cursor-color);border-left-width:2px}.cm-editor .cm-fat-cursor{background:var(--editor-block-cursor-color)!important;opacity:.6;border:none;min-width:.5em}.cm-editor:not(.cm-focused) .cm-fat-cursor{background:var(--editor-block-cursor-color)!important;outline:none!important;opacity:.4}.cm-editor .cm-selectionBackground{background:var(--editor-selection-color)!important}.cm-editor.cm-focused .cm-selectionBackground{background:var(--editor-selection-focus-color)!important}.cm-editor .cm-line{padding:1px 0}.cm-editor .cm-frontmatter{background:var(--frontmatter-bg)}.cm-editor .cm-frontmatter .tok-heading,.cm-editor .cm-frontmatter .tok-heading1,.cm-editor .cm-frontmatter .tok-heading2,.cm-editor .cm-frontmatter .tok-heading3{font-size:var(--editor-font-size);font-weight:var(--weight-normal);line-height:var(--editor-line-height);color:var(--color-text-secondary)}.cm-editor .tok-heading1{font-size:22px;font-weight:var(--weight-semibold);color:var(--color-text);line-height:var(--leading-tight)}.cm-editor .tok-heading2{font-size:18px;font-weight:var(--weight-semibold);color:var(--color-text);line-height:var(--leading-tight)}.cm-editor .tok-heading3{font-size:16px;font-weight:var(--weight-semibold);color:var(--color-text);line-height:var(--leading-tight)}.cm-editor .tok-heading4{font-size:14px;font-weight:var(--weight-semibold);color:var(--color-text)}.cm-editor .tok-heading5,.cm-editor .tok-heading6{font-size:var(--editor-font-size);font-weight:var(--weight-semibold);color:var(--color-text)}.cm-editor .tok-strong{font-weight:var(--weight-semibold);color:var(--color-text)}.cm-editor .tok-emphasis{font-style:italic}.cm-editor .tok-link{color:var(--color-link);text-decoration:none}.cm-editor .tok-url,.cm-editor .cm-wikilink{color:var(--color-link)}.cm-editor .cm-wikilink-bracket{color:var(--color-text-muted)}.cm-editor .tok-url,.cm-editor .tok-link,.cm-editor .cm-wikilink{cursor:pointer}.cm-editor.cm-mod-held .tok-url,.cm-editor.cm-mod-held .tok-link,.cm-editor.cm-mod-held .cm-wikilink{text-decoration:underline}.cm-editor .cm-line:not(.cm-code-block) .tok-monospace{color:var(--code-inline-color);background:var(--code-inline-bg);padding:1px 5px;border-radius:var(--radius-md)}.cm-editor .cm-line:not(.cm-code-block) .tok-list.tok-monospace{color:var(--code-inline-color);background:var(--code-inline-bg)}.cm-editor .cm-line:not(.cm-code-block) .tok-processingInstruction.tok-processingInstruction:has(+.tok-monospace),.cm-editor .cm-line:not(.cm-code-block) .tok-monospace+.tok-processingInstruction.tok-processingInstruction{color:var(--code-inline-color)}.cm-editor .cm-line:not(.cm-code-block) .tok-processingInstruction,.cm-editor .cm-line:not(.cm-code-block) .tok-meta{color:var(--color-text-muted);font-weight:var(--weight-normal)}.cm-editor .cm-line:not(.cm-code-block) .tok-strong.tok-processingInstruction,.cm-editor .cm-line:not(.cm-code-block) .tok-strong.tok-meta{color:var(--color-text-muted);font-weight:var(--weight-normal)}.cm-editor .cm-line:not(.cm-code-block) .tok-list.tok-processingInstruction,.cm-editor .cm-line:not(.cm-code-block) .tok-list.tok-meta{color:var(--color-text);font-weight:var(--weight-normal)}.cm-editor .tok-contentSeparator{color:var(--color-border-strong)}.cm-editor .cm-hr-line:after{content:"";display:block;border-top:1px solid var(--color-border-strong);position:relative;top:-.5lh}.cm-editor .tok-quote{color:var(--quote-color);font-style:italic}.cm-editor .cm-line:has(.tok-quote){border-left:3px solid var(--quote-border);background:var(--quote-bg);padding:6px 12px;border-radius:var(--radius-md)}.cm-editor .cm-line:has(.tok-list){padding-bottom:2px}.cm-editor .cm-concealed{visibility:hidden;font-size:0}.cm-editor.cm-dim-normal .cm-mark-dimmed,.cm-editor.cm-dim-normal .cm-mark-dimmed span{color:var(--gray-200)!important;font-weight:var(--weight-normal)!important;font-style:normal!important;text-decoration:none!important}.cm-editor:not(.cm-dim-normal) .cm-mark-dimmed,.cm-editor:not(.cm-dim-normal) .cm-mark-dimmed span{color:var(--gray-400)!important;font-weight:var(--weight-normal)!important;font-style:normal!important;text-decoration:none!important}.cm-editor.cm-dim-mode .tok-url,.cm-editor.cm-dim-mode .tok-link.tok-processingInstruction{color:var(--color-link)!important;opacity:.8}.cm-editor .cm-checkbox{display:inline-flex;align-items:center;vertical-align:-.1em;line-height:0;color:var(--color-text-muted)}.cm-editor .cm-checkbox svg{width:1.2em;height:1.2em}.cm-editor .cm-checkbox-checked,.cm-editor .cm-line.cm-task-checked .tok-meta{color:#d97706}.cm-editor .cm-line.cm-task-checked{color:var(--color-text-muted)}.cm-editor .cm-line.cm-task-checked .cm-task-checked-text{text-decoration:line-through;text-decoration-color:var(--color-text-muted)}.cm-editor .cm-line.cm-table{font-size:var(--editor-font-size)}.cm-editor .cm-line.cm-table-hidden{display:none!important}.cm-table-rendered{margin:4px 0;overflow-x:auto}.cm-table-rendered table{border-collapse:collapse;width:auto;font-size:var(--editor-font-size);line-height:var(--editor-line-height)}.cm-table-rendered th,.cm-table-rendered td{border:1px solid var(--color-border);padding:6px 12px;vertical-align:top}.cm-table-rendered th{font-weight:600;background:var(--color-surface);border-bottom:1px solid var(--color-text-secondary)}.cm-table-rendered td{background:transparent}.cm-table-rendered tr:hover td{background:var(--color-surface)}.cm-table-rendered .cm-table-code{color:var(--code-inline-color);background:var(--code-inline-bg);padding:1px 5px;border-radius:var(--radius-md)}.cm-table-rendered .cm-table-link{color:var(--color-link);text-decoration:none}.cm-table-rendered .cm-table-link:hover{text-decoration:underline}.cm-editor .cm-line.cm-code-block{background:transparent;color:var(--code-block-fg);font-family:var(--font-mono);font-size:11px;line-height:1.5;padding:0 14px;position:relative}.cm-editor .cm-line.cm-code-block:before{content:"";position:absolute;top:0;bottom:0;left:0;right:calc(-1 * var(--space-12));background:var(--code-block-bg);z-index:-3;pointer-events:none}.cm-editor .cm-line.cm-code-block .cm-selectionBackground{background:#4078b54d!important}.cm-editor.cm-cursor-in-code-block .cm-cursor{border-left-color:var(--code-block-fg)}.cm-editor.cm-cursor-in-code-block .cm-fat-cursor{background:#ffffff80!important}.cm-editor .cm-line.cm-code-block--first{padding-top:14px}.cm-editor .cm-line.cm-code-block--first:before{border-radius:var(--code-block-radius) var(--code-block-radius) 0 0}.cm-code-copy{position:absolute;top:4px;right:calc(4px - var(--space-12));display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;border-radius:3px;background:transparent;color:var(--gray-500);cursor:pointer;transition:color .15s}.cm-code-copy svg{width:12px;height:12px}.cm-code-copy:hover{color:var(--gray-300)}.cm-code-copy--copied{opacity:1;color:var(--color-accent)}.cm-editor .cm-line.cm-code-block--last{padding-bottom:14px}.cm-editor .cm-line.cm-code-block--last:before{border-radius:0 0 var(--code-block-radius) var(--code-block-radius)}.cm-editor .cm-line.cm-code-block .tok-processingInstruction,.cm-editor .cm-line.cm-code-block .tok-meta,.cm-editor .cm-line.cm-code-block .tok-labelName{color:var(--code-fence-color)}.cm-editor .cm-line.cm-code-block--plain{color:var(--code-block-fg)}.cm-editor .cm-line.cm-code-block--plain:before{background:var(--code-block-bg)}.cm-editor .cm-line.cm-mermaid-hidden{display:none!important}.cm-mermaid-diagram{padding:16px;margin:4px 0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--code-block-radius);overflow-x:auto}.cm-mermaid-diagram svg{display:block;max-width:100%;height:auto}.cm-mermaid-error{color:var(--color-danger);font-size:var(--text-sm);font-family:var(--font-mono)}.cm-editor .cm-line.cm-image-hidden{display:none!important}.cm-image-widget{padding:4px 0}.cm-image-widget img{display:block;max-width:100%;height:auto;border-radius:var(--radius-md)}.cm-image-widget--error{color:var(--color-text-muted);font-size:var(--text-sm);font-family:var(--font-mono);padding:8px 0}.cm-editor .cm-tooltip-autocomplete{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000014;font-family:var(--editor-font);font-size:var(--editor-font-size)}.cm-editor .cm-tooltip-autocomplete ul{padding:var(--space-1) 0}.cm-editor .cm-tooltip-autocomplete ul li{padding:var(--space-1) var(--space-3);color:var(--color-text)}.cm-editor .cm-tooltip-autocomplete ul li[aria-selected]{background:var(--color-surface-active);color:var(--color-text)}.cm-editor .cm-tooltip-autocomplete .cm-completionLabel{color:var(--color-text)}.cm-editor .cm-tooltip-autocomplete .cm-completionDetail{color:var(--color-text-muted);font-style:normal;margin-left:var(--space-2)}.cm-editor .cm-line.cm-custom-block-hidden{display:none!important}.cm-custom-block{line-height:0;font-size:0}@media(max-width:768px){.cm-editor .cm-scroller{padding:var(--space-2) var(--space-2);max-width:none}.cm-editor .cm-content{padding:0}.cm-editor .cm-gutters{display:none}.cm-editor .cm-scroller::-webkit-scrollbar{display:none}.editor-empty{padding:var(--space-4)}}.resize-handle{position:absolute;top:0;width:24px;height:100%;cursor:col-resize;z-index:10}.resize-handle--left{right:-12px}.resize-handle--right{left:-12px}.resize-handle:after{content:"";position:absolute;top:0;left:calc(50% - 2px);width:4px;height:100%;border-radius:2px;background:var(--color-accent);opacity:0;transition:opacity .15s}.resize-handle:hover:after{opacity:.5}.resize-handle--active:after{opacity:.8}.toc-slot{position:relative;flex-shrink:0}.toc{--fg-0: #171717;--fg-1: #737373;--fg-2: #a3a3a3;--border: #e5e5e5;--bg-1: #f3f3f3;--accent: #3a7ed7;height:100%;border-right:1px solid var(--border);background:var(--bg-1);overflow-y:auto;display:flex;flex-direction:column}.toc-header{display:flex;align-items:center;padding:0 8px;border-bottom:1px solid var(--border);flex-shrink:0;position:sticky;top:0;z-index:1;background:var(--bg-1)}.toc-label{font-size:12px;font-weight:500;color:var(--fg-1);padding:8px 4px}.toc-collapse{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:auto;padding:0;color:var(--fg-2);background:none;border:none;border-radius:4px;cursor:pointer}.toc-collapse:hover{color:var(--fg-1);background:var(--color-surface-hover, #ebebeb)}.toc-items{flex:1;overflow-y:auto;padding:8px 0}.toc-collapsed{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;flex-shrink:0;border-right:1px solid var(--border, #e5e5e5);background:var(--bg-1, #f3f3f3);cursor:pointer;color:var(--fg-2, #a3a3a3)}.toc-collapsed:hover{color:var(--fg-0, #171717);background:#ebebeb}.toc-item{display:flex;align-items:center;justify-content:space-between;padding:4px 16px;font-size:13px;color:var(--fg-1);text-decoration:none;cursor:pointer;border-left:2px solid transparent;line-height:1.4;transition:color .15s}.toc-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.toc-item[data-depth="1"]{font-weight:500;margin-top:8px}.toc-item[data-depth="2"]{padding-left:28px;font-size:12px}.toc-item[data-depth="3"]{padding-left:40px;font-size:11px}.toc-item[data-depth="3"]{color:var(--fg-2)}.toc-item:hover{color:var(--fg-0)}.toc-item.active{color:var(--accent);border-left-color:var(--accent);font-weight:500}.editorial-sidebar-body{flex:1;overflow-y:auto;padding:8px}.editorial-annotation{padding:10px;margin-bottom:6px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface);font-size:13px;cursor:pointer;transition:border-color .15s,background .15s}.editorial-annotation:hover{border-color:var(--color-text-muted)}.editorial-annotation--flash{animation:editorial-flash 1s ease-out}@keyframes editorial-flash{0%{background:color-mix(in srgb,var(--color-marker) 20%,transparent)}to{background:var(--color-surface)}}.editorial-annotation-type{font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.editorial-annotation-type.comment{color:var(--color-comment-accent)}.editorial-annotation-type.deletion{color:var(--color-danger)}.editorial-annotation-type.global{color:var(--color-warning)}.editorial-annotation-anchor{font-size:11px;color:var(--color-text-secondary);margin-bottom:6px;padding:4px 8px;border-left:2px solid var(--color-text-muted);background:var(--color-surface-hover);border-radius:0 4px 4px 0;line-height:1.4}.editorial-annotation-text{color:var(--color-text);line-height:1.5}.editorial-annotation-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px}.editorial-annotation-line{font-family:var(--font-mono);font-size:10px;color:var(--color-text-muted)}.editorial-annotation-actions{display:flex;align-items:center;gap:4px}.editorial-annotation-edit,.editorial-annotation-delete{font-size:10px;font-weight:500;color:var(--color-text-muted);cursor:pointer;border:none;background:none;padding:2px 6px;border-radius:4px}.editorial-annotation-edit:hover{color:var(--color-comment-accent);background:var(--color-surface-hover)}.editorial-annotation-delete:hover{color:var(--color-danger);background:#ef44441a}.editorial-annotation-edit-area{margin-top:6px}.editorial-annotation-edit-textarea{width:100%;min-height:48px;padding:8px;border:1px solid var(--color-comment-accent);border-radius:6px;background:var(--color-surface);color:var(--color-text);font-size:13px;line-height:1.5;resize:vertical;outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--color-comment-accent) 15%,transparent)}.editorial-annotation-edit-actions{display:flex;align-items:center;gap:6px;margin-top:6px}.editorial-annotation-edit-hint{font-size:10px;color:var(--color-text-muted);margin-left:auto}.editorial-empty-state{text-align:center;padding:32px 16px;color:var(--color-text-muted);font-size:12px}.editorial-empty-state p{margin:4px 0}.editorial-btn{padding:6px 14px;border-radius:7px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);transition:all .15s}.editorial-btn:hover{background:var(--color-surface-hover)}.editorial-btn-primary{background:var(--color-comment-accent);border-color:var(--color-comment-accent);color:#fff}.editorial-btn-primary:hover{opacity:.9}.editorial-btn-sm{padding:3px 8px;font-size:11px}.editorial-modal-overlay{position:fixed;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.editorial-modal{background:var(--color-surface);border-radius:12px;padding:20px;width:420px;max-width:90vw;box-shadow:0 8px 32px #0000001f}.editorial-modal h3{margin:0 0 12px;font-size:16px;font-weight:600}.editorial-modal-anchor{font-size:11px;color:var(--color-text-muted);margin-bottom:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editorial-modal-anchor-text{color:var(--color-text-secondary)}.editorial-modal-field{margin-bottom:12px}.editorial-modal-field label{display:block;font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:4px}.editorial-modal-field select{width:100%;padding:6px 8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);font-size:13px}.editorial-modal-textarea{width:100%;min-height:80px;padding:8px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);font-size:13px;line-height:1.5;resize:vertical;outline:none}.editorial-modal-textarea:focus{border-color:var(--color-comment-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-comment-accent) 15%,transparent)}.editorial-modal-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:16px}.editorial-modal-hint{font-size:11px;color:var(--color-text-muted);margin-top:8px;text-align:right}.editorial-marker-line{background-color:color-mix(in srgb,var(--color-marker) 10%,transparent);border-left:3px solid var(--color-marker)}.editorial-anchor-highlight{background:color-mix(in srgb,var(--color-comment-accent) 10%,transparent);border-bottom:1.5px solid color-mix(in srgb,var(--color-comment-accent) 35%,transparent);border-radius:2px;cursor:pointer;transition:background .15s,border-color .15s}.editorial-anchor-highlight:hover{background:color-mix(in srgb,var(--color-comment-accent) 18%,transparent);border-bottom-color:color-mix(in srgb,var(--color-comment-accent) 55%,transparent)}.editorial-anchor-highlight--active{background:color-mix(in srgb,var(--color-comment-accent) 20%,transparent);border-bottom-color:color-mix(in srgb,var(--color-comment-accent) 65%,transparent)}.editorial-annotation--focused{border-color:var(--color-comment-accent)}.editorial-gutter{width:16px}.editorial-gutter-marker{color:var(--color-marker);font-size:8px;text-align:center;line-height:inherit;cursor:pointer}.tools-panel{position:relative;display:flex;flex-direction:column;border-left:1px solid var(--color-border);background:var(--sidebar-bg)}.tools-panel-tabs{display:flex;align-items:center;border-bottom:1px solid var(--color-border);padding:0 8px;flex-shrink:0}.tools-panel-tab{display:flex;align-items:center;gap:5px;padding:8px 12px;font-size:12px;font-weight:500;color:var(--color-text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.tools-panel-tab:hover{color:var(--color-text-secondary)}.tools-panel-tab.active{color:var(--color-text);border-bottom-color:var(--color-comment-accent)}.tools-panel-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--color-surface-hover);color:var(--color-text-muted);font-size:10px;font-weight:600}.tools-panel-tab.active .tools-panel-tab-badge{background:var(--color-comment-accent);color:#fff}.tools-panel-collapse{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:auto;padding:0;color:var(--color-text-muted);background:none;border:none;border-radius:4px;cursor:pointer}.tools-panel-collapse:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.tools-panel-content{flex:1;overflow-y:auto}.tools-panel-collapsed{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-left:1px solid var(--color-border);background:var(--sidebar-bg);cursor:pointer;color:var(--color-text-muted)}.tools-panel-collapsed:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.tools-panel-collapsed-badge{font-size:9px;font-weight:600;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--color-comment-accent);color:#fff}.terminal-grid-cell{display:flex;min-height:0;overflow:hidden}.terminal-collapsed-strip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-left:1px solid var(--color-border);background:var(--sidebar-bg);cursor:pointer;color:var(--color-text-muted)}.terminal-collapsed-strip:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.terminal-panel{position:relative;flex:1;display:flex;flex-direction:column;border-left:1px solid var(--color-border);min-width:0}.terminal-panel-header{display:flex;align-items:center;gap:8px;padding:0 8px;border-bottom:1px solid var(--color-border);background:var(--sidebar-bg);flex-shrink:0}.terminal-panel-title{font-size:12px;font-weight:500;color:var(--color-text-muted);padding:8px 4px}.terminal-panel-commands{display:flex;gap:4px;margin-left:8px}.terminal-panel-command{font-size:11px;padding:2px 8px;color:var(--color-text-muted);background:none;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;white-space:nowrap;font-weight:500;outline:none}.terminal-panel-command:focus{outline:none}.terminal-panel-command:hover{color:var(--color-text-secondary);background:var(--color-surface-hover);border-color:var(--color-text-muted)}.terminal-panel-inject{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--color-text-muted);background:none;border:none;border-radius:4px;cursor:pointer;outline:none}.terminal-panel-inject:focus{outline:none}.terminal-panel-inject:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.terminal-panel-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;color:var(--color-text-muted);background:none;border:none;border-radius:4px;cursor:pointer}.terminal-panel-close:hover{color:var(--color-text-secondary);background:var(--color-surface-hover)}.terminal-panel-body{flex:1;background:#1a1a1a;padding:4px;overflow:hidden}.terminal-panel-body .xterm{height:100%}.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{font-family:monospace;-webkit-user-select:text;user-select:text;white-space:pre}.xterm .xterm-accessibility-tree>div{transform-origin:left;width:fit-content}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{position:absolute;display:none}.xterm .xterm-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow, #000) 0 6px 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.xterm .xterm-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow, #000) 6px 0 6px -6px inset}.mobile-header,.mobile-toolbar{display:none}@media(max-width:768px){.mobile-header{display:flex;align-items:center;height:40px;padding:0 var(--space-3);background:var(--sidebar-bg);border-bottom:1px solid var(--color-border);flex-shrink:0}.mobile-header__title{flex:1;display:flex;flex-direction:column;align-items:flex-start;overflow:hidden;min-width:0}.mobile-header__name{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.2}.mobile-header__folder{font-size:var(--text-xs);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.2}.mobile-toolbar{display:flex;align-items:center;justify-content:space-around;height:42px;background:var(--sidebar-bg);border-top:1px solid var(--color-border);flex-shrink:0;padding:0 var(--space-4)}.mobile-toolbar__btn{display:flex;align-items:center;justify-content:center;width:40px;height:34px;border-radius:var(--radius-md);color:var(--gray-500);-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast),background var(--duration-fast)}.mobile-toolbar__btn:active{background:var(--color-surface-active)}.mobile-toolbar__btn--active{color:var(--color-accent)}}.login{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--gray-50);font-family:var(--font-sans)}.login__form{width:320px;display:flex;flex-direction:column;gap:var(--space-4)}.login__title{font-size:var(--text-2xl);font-weight:var(--weight-semibold);color:var(--gray-900);margin:0 0 var(--space-2) 0}.login__input{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-base);font-family:var(--font-sans);color:var(--gray-900);background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-md);outline:none;box-sizing:border-box}.login__input:focus{border-color:var(--accent-500)}.login__button{padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-family:var(--font-sans);font-weight:var(--weight-medium);color:#fff;background:var(--gray-900);border:none;border-radius:var(--radius-md);cursor:pointer}.login__button:hover{background:var(--gray-800)}.login__button:disabled{opacity:.5;cursor:not-allowed}.login__error{font-size:var(--text-sm);color:var(--red-500)}.finder-overlay{position:fixed;inset:0;z-index:999}.finder-panel{max-height:70vh;background:var(--code-block-bg);border-top:1px solid var(--gray-700);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;z-index:1000;position:relative;animation:finder-slide-up .1s ease-out}@keyframes finder-slide-up{0%{max-height:0;opacity:.8}to{max-height:70vh;opacity:1}}.finder-input-row{display:flex;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid var(--gray-700);background:#ffffff08}.finder-search-icon{width:14px;height:14px;flex-shrink:0;color:var(--code-function)}.finder-input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font-editor);font-size:var(--editor-font-size);color:var(--code-block-fg);line-height:1.3;caret-color:var(--code-function)}.finder-input::placeholder{color:var(--code-comment)}.finder-mode-badge{font-family:var(--font-editor);font-size:10px;font-weight:var(--weight-semibold);color:var(--code-type);background:#78dce81a;padding:3px 10px;border-radius:4px;flex-shrink:0;text-transform:uppercase;letter-spacing:.06em;border:1px solid rgba(120,220,232,.15)}.finder-results{flex:1;overflow-y:auto;padding:4px 0}.finder-results::-webkit-scrollbar{width:6px}.finder-results::-webkit-scrollbar-track{background:transparent}.finder-results::-webkit-scrollbar-thumb{background:var(--gray-700);border-radius:3px}.finder-item{display:flex;align-items:baseline;gap:8px;padding:1px 16px 1px 8px;cursor:pointer;line-height:1.25;transition:background 60ms ease}.finder-item-chevron{width:10px;height:10px;flex-shrink:0;align-self:center;color:var(--code-function);visibility:hidden}.finder-item--selected .finder-item-chevron{visibility:visible}.finder-item:hover{background:#ffffff0a}.finder-item--selected,.finder-item--selected:hover{background:#ffffff12}.finder-item--current .finder-item-label{color:var(--code-function)}.finder-item-label{font-family:var(--font-editor);font-size:var(--editor-font-size);color:var(--code-block-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finder-item-detail{font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.finder-item--selected .finder-item-detail{color:var(--gray-500)}.finder-item-shortcut{font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment);margin-left:auto;flex-shrink:0;white-space:nowrap}.finder-item-meta{font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment);flex-shrink:0;min-width:36px;text-align:right}.finder-item--selected .finder-item-meta{color:var(--code-type)}.finder-item-label--text{font-family:var(--font-editor);font-size:var(--editor-font-size)}.finder-item-star{width:12px;height:12px;flex-shrink:0;color:var(--code-string);opacity:.7}.finder-match{color:var(--red-500);font-weight:var(--weight-semibold)}.finder-empty{padding:var(--space-6) 16px;text-align:center;font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment)}@media(max-width:768px){.finder-panel{max-height:60vh}.finder-input{font-size:16px}.finder-item{padding:3px 12px 3px 8px;min-height:0;align-items:baseline}.finder-item-label{font-size:13px}.finder-item-detail,.finder-item-shortcut{display:none}}.grep-overlay{position:fixed;inset:0;z-index:999;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.grep-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(98vw,1800px);height:min(90vh,900px);z-index:1000;background:var(--code-block-bg);border:1px solid var(--gray-700);border-radius:10px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 0 0 1px #ffffff0a,0 24px 64px #00000073,0 8px 20px #0000004d;animation:grep-fade-in .12s ease-out}@keyframes grep-fade-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.grep-topbar{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--gray-700);flex-shrink:0;background:#ffffff08}.grep-topbar__badge{font-family:var(--font-editor);font-size:10px;font-weight:var(--weight-semibold);color:var(--code-type);background:#78dce81a;padding:3px 10px;border-radius:4px;text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;border:1px solid rgba(120,220,232,.15)}.grep-topbar__prompt{color:var(--code-function);font-family:var(--font-editor);font-size:var(--text-sm);font-weight:var(--weight-bold);flex-shrink:0;-webkit-user-select:none;user-select:none}.grep-topbar__input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font-editor);font-size:var(--editor-font-size);color:var(--code-block-fg);line-height:1.3;min-width:0;caret-color:var(--code-function)}.grep-topbar__input::placeholder{color:var(--code-comment)}.grep-topbar__count{font-family:var(--font-editor);font-size:11px;color:var(--code-comment);flex-shrink:0;white-space:nowrap;padding:2px 8px;background:#ffffff0a;border-radius:3px}.grep-body{flex:1;display:flex;min-height:0}.grep-results{width:66%;display:flex;flex-direction:column;border-right:1px solid var(--gray-700);min-width:0}.grep-results__header{font-family:var(--font-editor);font-size:10px;font-weight:var(--weight-semibold);color:var(--code-comment);text-transform:uppercase;letter-spacing:.08em;padding:5px 16px;border-bottom:1px solid var(--gray-700);background:#ffffff05;flex-shrink:0}.grep-results__list{flex:1;overflow-y:auto;overflow-x:hidden;padding:2px 0}.grep-results__list::-webkit-scrollbar,.grep-preview__content::-webkit-scrollbar{width:6px}.grep-results__list::-webkit-scrollbar-track,.grep-preview__content::-webkit-scrollbar-track{background:transparent}.grep-results__list::-webkit-scrollbar-thumb,.grep-preview__content::-webkit-scrollbar-thumb{background:var(--gray-700);border-radius:3px}.grep-results__empty{padding:var(--space-6) 16px;text-align:center;font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment)}.grep-item{display:flex;align-items:baseline;gap:0;padding:1px 12px 1px 4px;cursor:pointer;font-family:var(--font-editor);font-size:var(--editor-font-size);line-height:1.25;white-space:nowrap;overflow:hidden;transition:background 60ms ease}.grep-item:hover{background:#ffffff0a}.grep-item--selected,.grep-item--selected:hover{background:#ffffff12}.grep-item__indicator{width:18px;flex-shrink:0;color:var(--code-function);font-weight:var(--weight-bold);text-align:center}.grep-item__location{color:var(--code-comment);flex-shrink:0;margin-right:6px;overflow:hidden;text-overflow:ellipsis;max-width:260px}.grep-item--selected .grep-item__location{color:var(--code-type)}.grep-item__text{color:var(--code-block-fg);overflow:hidden;text-overflow:ellipsis}.grep-preview{width:34%;display:flex;flex-direction:column;min-width:0}.grep-preview__header{font-family:var(--font-editor);font-size:10px;font-weight:var(--weight-semibold);color:var(--code-comment);text-transform:uppercase;letter-spacing:.08em;padding:5px 16px;border-bottom:1px solid var(--gray-700);background:#ffffff05;flex-shrink:0;display:flex;justify-content:space-between;gap:12px}.grep-preview__path{font-family:var(--font-editor);font-size:10px;color:var(--code-type);text-transform:none;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.grep-preview__content{flex:1;overflow:auto;font-family:var(--font-editor);font-size:var(--editor-font-size);line-height:1.55;padding:4px 0}.grep-preview__empty{display:flex;align-items:center;justify-content:center;height:100%;font-family:var(--font-editor);font-size:var(--text-sm);color:var(--code-comment)}.grep-preview-line{display:flex;padding:0 16px 0 0;min-height:1.55em}.grep-preview-line--highlight{background:#ff618814;border-left:2px solid var(--code-keyword);padding-left:0}.grep-preview-line:not(.grep-preview-line--highlight){border-left:2px solid transparent}.grep-preview-line__num{width:52px;flex-shrink:0;text-align:right;padding-right:16px;color:var(--gray-600);-webkit-user-select:none;user-select:none;font-size:11px}.grep-preview-line--highlight .grep-preview-line__num{color:var(--code-keyword)}.grep-preview-line__text{white-space:pre;color:var(--code-block-fg);overflow:hidden;text-overflow:ellipsis}.grep-match{color:var(--red-500);font-weight:var(--weight-semibold)}@media(max-width:768px){.grep-panel{width:100vw;height:100vh;border-radius:0;border:none}.grep-topbar__input{font-size:16px}.grep-body{flex-direction:column}.grep-result-item{min-height:44px;align-items:center}}.status-bar{display:flex;align-items:center;padding:0 var(--space-4);font-family:var(--font-editor);font-size:var(--text-xs);gap:var(--space-4);border-top:1px solid var(--color-border)}.status-bar__mode{font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.status-bar__mode--normal{color:var(--color-accent)}.status-bar__mode--insert{color:var(--color-success)}.status-bar__mode--visual{color:var(--color-warning)}.status-bar__mode--replace{color:var(--color-danger)}.status-bar__path{color:var(--status-bar-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.status-bar__path:hover{color:var(--color-text-primary)}.status-bar__spacer{flex:1}.status-bar__sep{width:1px;height:12px;background:var(--color-border)}.status-bar__stat{color:var(--status-bar-text);white-space:nowrap}.status-bar__save{transition:color var(--duration-fast)}.status-bar__save--dirty{color:var(--color-warning)}.status-bar__save--saving{color:var(--status-bar-text)}.status-bar__save--saved{color:var(--color-success)}.status-bar__save--error{color:var(--color-danger)}.status-bar__toggle{color:var(--status-bar-text);cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:.04em}.status-bar__toggle:hover{color:var(--color-text-primary)}.status-bar__external{color:var(--color-warning);font-weight:var(--weight-medium)}@media(max-width:768px){.status-bar{height:24px;padding:0 var(--space-3);gap:var(--space-2)}.status-bar__mode{display:none}.status-bar__stat{font-size:var(--text-xs)}}.app{display:grid;grid-template-rows:1fr;height:100%;overflow:hidden}.sidebar-slot{position:relative;min-height:0}.sidebar{height:100%;background:var(--sidebar-bg);border-right:1px solid var(--color-border);overflow-y:auto;display:flex;flex-direction:column}.editor-pane{overflow:hidden;display:flex;flex-direction:row;background:var(--editor-bg)}.editor-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.status-bar{flex-shrink:0;height:var(--status-bar-height);background:var(--status-bar-bg);color:var(--status-bar-text)}@media(max-width:768px){.app--mobile{display:flex;flex-direction:column;height:100%;overflow:hidden}.app--mobile .editor-pane{flex:1;min-height:0}.mobile-sidebar-overlay{position:fixed;inset:44px 0 0;background:#0000004d;z-index:50;-webkit-tap-highlight-color:transparent}.mobile-sidebar{position:fixed;top:44px;left:0;bottom:0;width:90vw;background:var(--sidebar-bg);border-right:1px solid var(--color-border);z-index:51;overflow-y:auto;display:flex;flex-direction:column}}:root{--gray-50: #fafaf9;--gray-100: #f5f5f3;--gray-150: #eeedeb;--gray-200: #e7e5e3;--gray-300: #d6d3d0;--gray-400: #a8a29e;--gray-500: #78716c;--gray-600: #57534e;--gray-700: #44403c;--gray-800: #292524;--gray-900: #171717;--gray-950: #0c0a09;--accent-500: #5a8a7a;--accent-600: #4a7468;--red-500: #c7534e;--blue-500: #4078b5;--green-500: #5a8a6a;--amber-500: #b8915a;--purple-500: #8a6aad;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif: "Georgia", "Times New Roman", serif;--font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", Menlo, monospace;--font-editor: "Ubuntu Mono", "SF Mono", "Cascadia Code", Menlo, monospace;--text-xs: .6875rem;--text-sm: .75rem;--text-base: .875rem;--text-lg: 1.0625rem;--text-xl: 1.3125rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--leading-tight: 1.25;--leading-normal: 1.7;--leading-relaxed: 1.55;--weight-normal: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 2px;--radius-md: 4px;--duration-fast: .1s;--duration-normal: .2s}:root{--color-bg: var(--gray-50);--color-surface: #ffffff;--color-surface-hover: var(--gray-100);--color-surface-active: var(--gray-150);--color-text: var(--gray-900);--color-text-secondary: var(--gray-600);--color-text-muted: var(--gray-400);--color-border: var(--gray-200);--color-border-strong: var(--gray-300);--color-accent: var(--accent-500);--color-accent-hover: var(--accent-600);--color-focus: var(--accent-500);--color-link: #3a7ed7;--color-link-hover: #2b6cb0;--color-comment-accent: var(--color-link);--color-marker: rgb(64, 120, 181);--color-success: var(--green-500);--color-warning: var(--amber-500);--color-danger: var(--red-500);--sidebar-bg: var(--gray-50);--editor-font: var(--font-editor);--editor-font-size: 12px;--editor-letter-spacing: -.008em;--editor-line-height: var(--leading-relaxed);--editor-bg: var(--color-surface);--editor-max-width: 1250px;--editor-gutter-color: var(--gray-300);--editor-cursor-color: var(--color-text);--editor-block-cursor-color: var(--blue-500);--editor-selection-color: rgba(60, 120, 190, .12);--editor-selection-focus-color: rgba(60, 120, 190, .18);--code-inline-color: #d73a49;--code-inline-bg: #ebebeb;--code-block-bg: #403e41;--code-block-fg: #fcfcfa;--code-fence-color: #727072;--code-block-radius: 8px;--code-keyword: #ff6188;--code-string: #ffd866;--code-number: #ab9df2;--code-comment: #727072;--code-type: #78dce8;--code-function: #a9dc76;--code-property: #fcfcfa;--code-operator: #ff6188;--code-punctuation: #939293;--code-regexp: #ab9df2;--code-tag: #ff6188;--code-attribute: #78dce8;--code-variable: #fcfcfa;--quote-border: #e5e5e5;--quote-bg: #f3f3f3;--quote-color: #737373;--frontmatter-bg: var(--gray-100);--banner-warning-bg: #fef3cd;--banner-warning-border: #f0d78c;--status-bar-height: 28px;--status-bar-bg: var(--gray-150);--status-bar-text: var(--gray-500)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background:var(--color-bg)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}ul,ol{list-style:none}::-webkit-scrollbar{width:2px;height:2px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong)}
