:root{--bg: #f9f7f4;--surface: #ffffff;--surface2: #f0ede8;--border: #ddd8d0;--text: #1a1a1a;--text-muted: #777;--accent: #3d6b50;--accent-hover: #2e5240;--danger: #c0392b;--danger-hover: #a93226;--sidebar-w: 260px;--topbar-h: 48px;--toolbar-h: 44px;--statusbar-h: 30px;--radius: 6px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "SF Mono", "Fira Code", monospace;--font-prose: Georgia, "Times New Roman", serif;--shadow: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.12)}[data-theme=dark]{--bg: #1a1a1a;--surface: #242424;--surface2: #2e2e2e;--border: #3a3a3a;--text: #e8e6e1;--text-muted: #888;--accent: #6aaa82;--accent-hover: #7bbf93;--danger: #e74c3c;--danger-hover: #ec6153;--shadow: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4)}[data-theme=sepia]{--bg: #f4ede0;--surface: #fdf6ec;--surface2: #ede6d6;--border: #d4c5a9;--text: #3d2b1f;--text-muted: #8a7060;--accent: #7a6b3d;--accent-hover: #5e5230;--danger: #b33000;--danger-hover: #8f2600;--shadow: 0 1px 3px rgba(61,43,31,.1);--shadow-md: 0 4px 12px rgba(61,43,31,.15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}button{cursor:pointer;border:none;background:none;font:inherit;color:inherit}input,select,textarea{font:inherit;color:inherit}a{color:var(--accent);text-decoration:none}.loading-screen{display:flex;align-items:center;justify-content:center;height:100%;font-size:18px;color:var(--text-muted)}.mode-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:calc(var(--topbar-h) + 32px) 24px 48px;background:var(--bg)}.mode-card{width:100%;max-width:600px;text-align:center}.mode-card .mode-icon{font-size:56px;margin-bottom:12px}.mode-card h1{font-size:32px;font-weight:700;margin-bottom:6px}.mode-subtitle{color:var(--text-muted);font-size:15px;margin-bottom:40px}.mode-options{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow-md);text-align:left}.mode-divider{display:flex;align-items:center;padding:12px 28px;color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;border-top:1px solid var(--border);gap:12px}.mode-divider:before,.mode-divider:after{content:"";flex:1;height:1px;background:var(--border)}.mode-option{display:flex;gap:20px;padding:28px}.mode-option-icon{font-size:32px;flex-shrink:0;line-height:1;margin-top:2px}.mode-option-body h2{font-size:18px;font-weight:600;margin-bottom:6px}.mode-option-body p{font-size:14px;color:var(--text-muted);line-height:1.5;margin-bottom:14px}.mode-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .15s,opacity .15s}.mode-btn:disabled{opacity:.5;cursor:not-allowed}.mode-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.mode-btn.primary:hover:not(:disabled){background:var(--accent-hover)}.mode-btn.secondary{background:var(--surface2);color:var(--text);border-color:var(--border)}.mode-btn.secondary:hover:not(:disabled){background:var(--border)}.mode-btn.ghost{background:none;color:var(--text-muted);border-color:var(--border)}.mode-btn.ghost:hover:not(:disabled){background:var(--surface2);color:var(--text)}.mode-btn.small{font-size:12px;padding:5px 10px}.mode-reconnect{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mode-note{font-size:11px!important;color:var(--text-muted)!important;margin-top:10px!important;margin-bottom:0!important}.mode-error{color:var(--danger);font-size:13px;margin-top:8px}.mode-unsupported{color:var(--text-muted);font-size:13px;font-style:italic;margin-bottom:0!important}.mode-option-disabled{opacity:.55;pointer-events:none}.mode-option-disabled .mode-option-icon{filter:grayscale(1)}.mode-option-recommended{border:1.5px solid var(--accent);border-radius:var(--radius)}.mode-recommended-badge{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:1px 6px;border-radius:8px;background:var(--accent);color:#fff;vertical-align:middle;margin-left:8px}.mode-badge{font-size:11px;padding:2px 7px;border-radius:10px;background:var(--surface2);border:1px solid var(--border);color:var(--text-muted)}.login-page{height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:48px 40px;width:360px;text-align:center;box-shadow:var(--shadow-md)}.login-icon{font-size:48px;margin-bottom:12px}.login-card h1{font-size:24px;margin-bottom:4px}.login-subtitle{color:var(--text-muted);margin-bottom:28px;font-size:13px}.login-form{display:flex;flex-direction:column;gap:12px}.login-form input{padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);font-size:15px;transition:border-color .15s}.login-form input:focus{outline:none;border-color:var(--accent)}.login-form button{padding:10px;background:var(--accent);color:#fff;border-radius:var(--radius);font-size:15px;font-weight:600;transition:background .15s}.login-form button:hover:not(:disabled){background:var(--accent-hover)}.login-form button:disabled{opacity:.5;cursor:not-allowed}.login-error{color:var(--danger);font-size:13px}.app-layout{display:flex;height:100%;overflow:hidden}.main-area{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.topbar{height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.app-brand{font-weight:600;font-size:15px}.topbar-right{margin-left:auto;display:flex;gap:8px}.sidebar{width:var(--sidebar-w);flex-shrink:0;border-right:1px solid var(--border);background:var(--surface2);display:flex;flex-direction:column;overflow:hidden}.app-layout.sidebar-hidden .sidebar{display:none}.sidebar-header{display:flex;align-items:center;gap:6px;padding:10px 10px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.search-input{flex:1;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:13px}.search-input:focus{outline:none;border-color:var(--accent)}.sidebar-scroll{flex:1;overflow-y:auto;padding-bottom:8px}.folder-section{border-bottom:1px solid var(--border)}.folder-header{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 4px 0}.folder-toggle{flex:1;text-align:left;padding:6px 8px;font-size:13px;font-weight:600;color:var(--text-muted);border-radius:var(--radius);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-toggle:hover{background:var(--border);color:var(--text)}.folder-actions{display:flex;gap:2px;flex-shrink:0}.folder-label{padding:8px 10px 4px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.folder-docs{padding:2px 6px 6px 12px}.doc-empty{font-size:12px;color:var(--text-muted);padding:4px;font-style:italic}.doc-item{display:flex;align-items:flex-start;gap:6px;padding:5px 6px;border-radius:var(--radius);cursor:pointer;position:relative}.doc-item:hover{background:var(--border)}.doc-item.active{background:var(--accent);color:#fff}.doc-item.active .doc-words{color:#ffffffb3}.doc-item.active .icon-btn{color:#fff}.doc-title{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-words{font-size:11px;color:var(--text-muted);white-space:nowrap}.doc-menu-wrap{position:relative}.doc-dropdown{position:absolute;right:0;top:100%;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:100;min-width:120px}.doc-dropdown button{display:block;width:100%;padding:8px 12px;text-align:left;font-size:13px}.doc-dropdown button:hover{background:var(--surface2)}.doc-dropdown button.danger{color:var(--danger)}.doc-dropdown button.danger:hover{background:#fef0f0}[data-theme=dark] .doc-dropdown button.danger:hover{background:#3a1c1c}.rename-input{width:100%;font-size:13px;font-weight:600;padding:2px 4px;border:1px solid var(--accent);border-radius:3px;background:var(--surface)}.sidebar-footer{padding:10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px;flex-shrink:0}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:4px 6px;border-radius:var(--radius);font-size:14px;transition:background .1s;color:var(--text-muted)}.icon-btn:hover{background:var(--border);color:var(--text)}.icon-btn.sm{font-size:12px;padding:2px 5px}.icon-btn.danger:hover{color:var(--danger)}.sidebar-btn{padding:7px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);font-size:13px;text-align:left;transition:background .1s;width:100%}.sidebar-btn:hover{background:var(--surface2)}.sidebar-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.sidebar-btn.primary:hover:not(:disabled){background:var(--accent-hover)}.sidebar-btn.primary:disabled{opacity:.5;cursor:not-allowed}.sidebar-btn.danger{color:var(--danger)}.sidebar-btn.danger:hover{background:#fef0f0}[data-theme=dark] .sidebar-btn.danger:hover{background:#3a1c1c}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.empty-icon{font-size:56px}.empty-state h2{font-size:22px;color:var(--text)}.empty-state p{font-size:15px}.editor-wrap{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--surface)}.editor-wrap.focus-mode .editor-toolbar{opacity:0;pointer-events:none}.editor-wrap.focus-mode:hover .editor-toolbar{opacity:1;pointer-events:all}.editor-toolbar{position:relative;z-index:10;height:var(--toolbar-h);display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;overflow:visible;transition:opacity .2s}.toolbar-scroll{flex:1;display:flex;align-items:center;gap:4px;overflow-x:auto;overflow-y:visible;min-width:0}.toolbar-right{display:flex;align-items:center;gap:6px;flex-shrink:0;overflow:visible}.toolbar-group{display:flex;gap:2px}.toolbar-sep{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}.toolbar-spacer{flex:1}.toolbar-btn{padding:4px 8px;border-radius:4px;font-size:13px;color:var(--text-muted);transition:background .1s,color .1s;white-space:nowrap}.toolbar-btn:hover:not(:disabled){background:var(--surface2);color:var(--text)}.toolbar-btn.active{background:var(--accent);color:#fff}.toolbar-btn:disabled{opacity:.3;cursor:not-allowed}.export-wrap{position:relative}.export-btn{border:1px solid var(--border)}.export-dropdown{position:absolute;right:0;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:100;min-width:160px}.export-dropdown button{display:block;width:100%;padding:9px 14px;text-align:left;font-size:13px}.export-dropdown button:hover{background:var(--surface2)}.editor-main{flex:1;overflow-y:auto}.editor-inner{min-height:100%;display:flex;flex-direction:column}.editor-inner.page{max-width:740px;margin:0 auto;width:100%}.editor-title-wrap{padding:24px 64px 0;flex-shrink:0}.editor-inner.page .editor-title-wrap{padding-left:40px;padding-right:40px}.editor-title{width:100%;font-size:28px;font-weight:700;border:none;background:transparent;outline:none;color:var(--text);font-family:var(--font-sans)}.editor-title::placeholder{color:var(--border)}.editor-body{flex:1;padding:16px 64px 40px;cursor:text}.editor-inner.page .editor-body{padding-left:40px;padding-right:40px}.tiptap-editor{outline:none;min-height:300px}.tiptap-editor .ProseMirror{outline:none;font-family:var(--font-prose);font-size:17px;line-height:1.75;color:var(--text)}.tiptap-editor .ProseMirror p{margin-bottom:1em}.tiptap-editor .ProseMirror h1{font-size:2em;margin:1em 0 .5em;font-family:var(--font-sans)}.tiptap-editor .ProseMirror h2{font-size:1.5em;margin:1em 0 .4em;font-family:var(--font-sans)}.tiptap-editor .ProseMirror h3{font-size:1.2em;margin:1em 0 .3em;font-family:var(--font-sans)}.tiptap-editor .ProseMirror ul,.tiptap-editor .ProseMirror ol{padding-left:1.6em;margin-bottom:1em}.tiptap-editor .ProseMirror li{margin-bottom:.3em}.tiptap-editor .ProseMirror blockquote{border-left:3px solid var(--accent);padding-left:1em;color:var(--text-muted);font-style:italic;margin:1em 0}.tiptap-editor .ProseMirror hr{border:none;border-top:1px solid var(--border);margin:2em 0}.tiptap-editor .ProseMirror strong{font-weight:700}.tiptap-editor .ProseMirror em{font-style:italic}.tiptap-editor .ProseMirror s{text-decoration:line-through}.tiptap-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--border);pointer-events:none;height:0}.editor-statusbar{height:var(--statusbar-h);display:flex;align-items:center;justify-content:space-between;padding:0 64px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;font-size:12px;color:var(--text-muted)}.status-save.saved{color:var(--accent)}.status-save.saving{color:var(--text-muted)}.status-save.unsaved{color:#e67e22}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-md);width:420px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.modal h3{margin-bottom:12px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.modal-header h2{font-size:18px}.modal-footer{padding:16px 20px;border-top:1px solid var(--border);flex-shrink:0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.modal-actions .sidebar-btn{width:auto}.modal>h3{padding:20px 20px 8px}.move-folder-btn{display:block;width:100%;text-align:left;padding:8px 20px;font-size:14px}.move-folder-btn:hover{background:var(--surface2)}.modal>.sidebar-btn{margin:8px 20px 16px;width:calc(100% - 40px)}.compile-modal{width:700px;max-width:95vw}.compile-body{display:flex;flex:1;overflow:hidden;gap:0;min-height:320px}.compile-col{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:16px;border-right:1px solid var(--border)}.compile-col:last-child{border-right:none}.compile-col h4{font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}.compile-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.compile-doc-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--radius);border:1px solid var(--border);cursor:pointer;background:var(--surface2);transition:background .1s}.compile-doc-item:hover{background:var(--border)}.compile-doc-item.selected{background:#3d6b5014;border-color:var(--accent)}.compile-doc-item .doc-title{flex:1;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-folder-tag{font-size:11px;color:var(--text-muted);white-space:nowrap;background:var(--border);padding:1px 5px;border-radius:10px}.order-num{font-size:12px;font-weight:600;color:var(--text-muted);min-width:18px}.compile-order-btns{display:flex;gap:2px;flex-shrink:0}.compile-options{display:flex;gap:12px;margin-bottom:4px}.compile-options label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:500;flex:1}.compile-options input,.compile-options select{padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);font-size:13px}.compile-options input:focus,.compile-options select:focus{outline:none;border-color:var(--accent)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.font-wrap{position:relative}.font-dropdown{position:absolute;right:0;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:100;min-width:150px}.font-dropdown button{display:block;width:100%;padding:9px 14px;text-align:left;font-size:14px}.font-dropdown button:hover{background:var(--surface2)}.font-dropdown button.active{color:var(--accent);font-weight:600}.editor-wrap.screenplay .ProseMirror{font-family:Courier New,Courier,monospace;font-size:13pt;line-height:1.5}.editor-wrap.screenplay .ProseMirror h1{font-family:Courier New,Courier,monospace;font-size:13pt;font-weight:700;text-transform:uppercase;text-align:left;margin:1.5em 0 .25em;border-bottom:none;background:var(--surface2);padding:2px 4px;border-radius:2px}.editor-wrap.screenplay .ProseMirror h2{font-family:Courier New,Courier,monospace;font-size:13pt;font-weight:400;text-transform:uppercase;text-align:center;margin:1.2em 0 0}.editor-wrap.screenplay .ProseMirror h3{font-family:Courier New,Courier,monospace;font-size:13pt;font-weight:400;text-align:center;font-style:italic;color:var(--text-muted);margin:0}.editor-wrap.screenplay .ProseMirror blockquote{font-family:Courier New,Courier,monospace;font-size:13pt;font-style:normal;border-left:none;padding-left:0;margin:.25em 4em;color:inherit}.editor-wrap.screenplay .ProseMirror p{font-family:Courier New,Courier,monospace;font-size:13pt;margin-bottom:.5em}.doc-icon{flex-shrink:0;font-size:13px;line-height:1.5}.doc-info{flex:1;min-width:0;display:flex;flex-direction:column}.doc-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.tag-pill{font-size:10px;padding:1px 6px;border-radius:10px;background:var(--border);color:var(--text-muted);white-space:nowrap;line-height:1.6}.doc-item.active .tag-pill{background:#fff3;color:#ffffffd9}.icon-picker-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;padding:12px 20px}.icon-option{font-size:20px;padding:6px;border-radius:var(--radius);cursor:pointer;text-align:center;transition:background .1s}.icon-option:hover{background:var(--surface2)}.tag-editor{padding:0 20px 12px}.current-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;min-height:28px}.tag-pill-editable{display:inline-flex;align-items:center;gap:4px;font-size:12px;padding:3px 8px;border-radius:10px;background:var(--accent);color:#fff}.tag-pill-editable button{font-size:14px;line-height:1;color:#fffc;padding:0 2px}.tag-pill-editable button:hover{color:#fff}.tag-input{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);font-size:13px}.tag-input:focus{outline:none;border-color:var(--accent)}.scroll-progress{position:absolute;top:0;left:0;height:2px;background:var(--accent);z-index:20;pointer-events:none;transition:width .1s linear}.editor-wrap{position:relative}.find-bar{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface2);border-bottom:1px solid var(--border);flex-shrink:0}.find-input{padding:5px 9px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:13px;width:180px}.find-input:focus{outline:none;border-color:var(--accent)}.find-highlight{background:#ffdc0073;border-radius:2px}[data-theme=dark] .find-highlight{background:#ffc80059}.status-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.word-goal-bar{width:80px;height:4px;background:var(--border);border-radius:2px;overflow:hidden;flex-shrink:0}.word-goal-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .3s ease}.goal-btn{font-size:11px;color:var(--text-muted);padding:1px 5px;border-radius:var(--radius);white-space:nowrap}.goal-btn:hover{background:var(--border);color:var(--text)}.goal-input{width:80px;padding:2px 6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-size:12px}.goal-input:focus{outline:none;border-color:var(--accent)}.qs-modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-md);width:520px;max-width:95vw;overflow:hidden}.qs-input{width:100%;padding:14px 18px;font-size:16px;border:none;border-bottom:1px solid var(--border);background:transparent;color:var(--text)}.qs-input:focus{outline:none}.qs-results{max-height:360px;overflow-y:auto}.qs-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 18px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}.qs-item:last-child{border-bottom:none}.qs-item:hover,.qs-item.active{background:var(--surface2)}.qs-icon{flex-shrink:0;font-size:16px}.qs-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qs-words{font-size:12px;color:var(--text-muted);flex-shrink:0}.qs-empty{padding:20px 18px;color:var(--text-muted);font-size:14px;text-align:center}.vh-modal{width:700px}.vh-body{display:flex;flex:1;overflow:hidden;min-height:380px}.vh-list{width:220px;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--border)}.vh-item{padding:12px 14px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .1s}.vh-item:hover{background:var(--surface2)}.vh-item.active{background:#3d6b5014}.vh-time{font-size:13px;font-weight:500;margin-bottom:2px}.vh-meta{font-size:11px;color:var(--text-muted)}.vh-preview{flex:1;overflow-y:auto;padding:16px 20px}.vh-preview-title{font-size:20px;font-weight:700;margin-bottom:12px}.vh-preview-content{font-family:var(--font-prose);font-size:15px;line-height:1.7;color:var(--text-muted)}.vh-empty{padding:24px;color:var(--text-muted);font-size:14px;text-align:center}.doc-item.dragging{opacity:.4}.doc-item[draggable=true]{cursor:grab}.doc-item[draggable=true]:active{cursor:grabbing}.trash-item{opacity:.7}.trash-item:hover{opacity:1}kbd{display:inline-block;padding:1px 5px;font-size:11px;font-family:var(--font-mono);border:1px solid var(--border);border-radius:3px;background:var(--surface2);color:var(--text-muted)}@media (max-width: 900px){:root{--sidebar-w: 240px}}@media (max-width: 768px){.sidebar{position:fixed;top:var(--topbar-h);left:0;bottom:0;z-index:200;width:min(300px,85vw);transform:translate(-105%);transition:transform .25s cubic-bezier(.4,0,.2,1);box-shadow:none}.app-layout.sidebar-open .sidebar{transform:translate(0);box-shadow:4px 0 24px #0000002e}.main-area{width:100%}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;top:var(--topbar-h);background:#00000073;z-index:199;animation:fadeIn .2s ease}.topbar{padding:0 10px;gap:8px}.app-brand{font-size:14px}.editor-title-wrap{padding:16px 16px 0}.editor-inner.page .editor-title-wrap{padding-left:16px;padding-right:16px}.editor-body{padding:12px 16px 40px}.editor-inner.page .editor-body{padding-left:16px;padding-right:16px}.editor-statusbar{padding:0 16px;font-size:11px}.status-words:after{content:""}.editor-toolbar{padding:0 6px}.toolbar-btn{padding:4px 6px;font-size:12px}.find-bar{flex-wrap:wrap}.find-input{width:100%;flex:1 1 100%}.modal{width:95vw;max-height:75vh}.modal-overlay{align-items:flex-end;padding-bottom:env(safe-area-inset-bottom,0)}.modal{border-bottom-left-radius:0;border-bottom-right-radius:0;max-height:80vh}.qs-modal,.vh-modal{width:95vw}.vh-body{flex-direction:column;min-height:0}.vh-list{width:100%;border-right:none;border-bottom:1px solid var(--border);max-height:180px}.compile-modal{width:95vw}.compile-body{flex-direction:column}.compile-col{border-right:none;border-bottom:1px solid var(--border)}.mode-option{flex-direction:column;gap:10px;padding:20px 16px}.mode-option-icon{font-size:24px}.mode-card h1{font-size:26px}.mode-subtitle{margin-bottom:24px}.doc-item{padding:8px 6px;min-height:40px}.icon-btn{min-height:36px;min-width:36px}.icon-btn.sm{min-height:32px;min-width:28px}}@media (max-width: 480px){.editor-title{font-size:22px}.editor-statusbar{flex-direction:column;align-items:flex-start;gap:2px;height:auto;padding:4px 16px}.status-left{flex-wrap:wrap}.toolbar-btn{padding:4px 5px}}@supports (padding: env(safe-area-inset-top)){.topbar{height:calc(var(--topbar-h) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));align-items:flex-end;padding-bottom:6px}@media (max-width: 768px){.sidebar,.sidebar-backdrop{top:calc(var(--topbar-h) + env(safe-area-inset-top))}}.editor-statusbar{padding-bottom:max(4px,env(safe-area-inset-bottom))}.sidebar{padding-bottom:env(safe-area-inset-bottom,0)}.mode-page{padding-top:max(calc(var(--topbar-h) + 32px),calc(env(safe-area-inset-top) + var(--topbar-h) + 16px))}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
