*{margin:0;padding:0;box-sizing:border-box}:root{--bg-color: #f5f5f5;--text-color: #1a1a1a;--cursor-color: #0080ff;--header-bg: rgba(245, 245, 245, .95);--toolbar-color: #666;--toolbar-hover: #0080ff;--pasted-color: #8a3ffc;--sidebar-bg: rgba(255, 255, 255, .98);--modal-bg: #ffffff;--input-bg: #ffffff;--input-border: rgba(0, 0, 0, .15);--border-color: rgba(0, 0, 0, .08);--shadow-color: rgba(0, 0, 0, .1);--secondary-text: rgba(26, 26, 26, .6);--tertiary-text: rgba(26, 26, 26, .4);--editor-font: "IBM Plex Mono", monospace}body.dark-mode{--bg-color: #1e1e1e;--text-color: #d4d4d4;--cursor-color: #ffc300;--header-bg: rgba(30, 30, 30, .95);--toolbar-color: #ffd93d;--toolbar-hover: #ffb700;--pasted-color: #c586c0;--sidebar-bg: rgba(37, 37, 38, .98);--modal-bg: #252526;--input-bg: #3c3c3c;--input-border: rgba(255, 255, 255, .1);--border-color: rgba(255, 255, 255, .12);--shadow-color: rgba(0, 0, 0, .5);--secondary-text: rgba(212, 212, 212, .6);--tertiary-text: rgba(212, 212, 212, .4)}body{font-family:IBM Plex Mono,monospace;background-color:var(--bg-color);color:var(--text-color);height:100vh;overflow:hidden}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--bg-color);display:none;justify-content:center;align-items:center;flex-direction:column;z-index:10000;gap:20px}.loading-overlay.active{display:flex}.loading-spinner{width:40px;height:40px;border:3px solid rgba(0,128,255,.1);border-top-color:var(--cursor-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:14px;color:var(--text-color)}.container{height:100vh;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .3s ease}.container.authenticated{opacity:1;pointer-events:auto}.header{background-color:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);padding:12px 20px;position:sticky;top:0;z-index:100;transition:opacity .3s ease,transform .3s ease}.header-title-section{display:flex;align-items:center;justify-content:center;gap:8px}.document-title{text-align:center;font-size:14px;font-weight:500;color:var(--secondary-text);letter-spacing:.5px}.rename-doc-btn{background:none;border:none;color:var(--tertiary-text);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.rename-doc-btn:hover{background:var(--input-bg);color:var(--cursor-color)}.toolbar{display:flex;align-items:center;gap:12px;max-width:800px;margin:0 auto}.tool-btn{background:none;border:none;color:var(--toolbar-color);cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease,background .2s ease}.tool-btn:hover{color:var(--toolbar-hover);background:#0080ff14}.tool-btn:active{transform:scale(.95)}.word-count{margin-left:auto;font-size:13px;color:var(--toolbar-color);font-weight:500}.toolbar-spacer{flex:1}.user-email-header{font-size:13px;color:#1a1a1a99;padding:0 8px;-webkit-user-select:none;user-select:none}.sign-out-header{opacity:.7}.sign-out-header:hover{opacity:1;color:#e74c3c;background:#e74c3c14}.editor-wrapper{flex:1;overflow:hidden;display:flex;justify-content:center;position:relative}.editor{width:100%;max-width:800px;height:100%;padding:60px 20px 120px;font-family:var(--editor-font);font-size:18px;line-height:1.8;color:var(--text-color);background-color:transparent;border:none;outline:none;caret-color:var(--cursor-color);overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.editor:empty:before{content:attr(data-placeholder);color:var(--tertiary-text);pointer-events:none}.editor:focus:before{content:none}.editor strong,.editor b{font-weight:600}.editor em,.editor i{font-style:italic}.editor blockquote{border-left:3px solid rgba(0,128,255,.5);padding-left:16px;margin:.5em 0;color:#1a1a1acc;font-style:italic}.editor s,.editor strike,.editor del{text-decoration:line-through;opacity:.7}.editor h1{font-size:1.222em;font-weight:700;margin:.5em 0;line-height:1.3}.editor h2{font-size:1.444em;font-weight:600;margin:.5em 0;line-height:1.4}.editor .pasted-text{color:var(--pasted-color)}.sentence{transition:opacity .1s ease}body.scroll-fade-active .sentence{opacity:.2}body.scroll-fade-active.gentler-opacity .sentence{opacity:.35}body.scroll-fade-active .sentence.in-focus{opacity:1}.editor .syntax-adjective,.editor .syntax-noun,.editor .syntax-verb,.editor .syntax-adverb,.editor .syntax-conjunction{font-weight:500;cursor:help;border-radius:3px;padding:0 1px;transition:background-color .15s ease}.editor .syntax-adjective{color:orange}.editor .syntax-adjective:hover{background-color:#ffa5001a}.editor .syntax-noun{color:#ff6b6b}.editor .syntax-noun:hover{background-color:#ff6b6b1a}.editor .syntax-verb{color:#60a5fa}.editor .syntax-verb:hover{background-color:#60a5fa1a}.editor .syntax-adverb{color:#a855f7}.editor .syntax-adverb:hover{background-color:#a855f71a}.editor .syntax-conjunction{color:#84cc16}.editor .syntax-conjunction:hover{background-color:#84cc161a}body.dark-mode .editor .syntax-adjective{color:#ffb84d}body.dark-mode .editor .syntax-noun{color:#ff8787}body.dark-mode .editor .syntax-verb{color:#7bb3ff}body.dark-mode .editor .syntax-adverb{color:#c084fc}body.dark-mode .editor .syntax-conjunction{color:#a3e635}.syntax-debug-panel{position:fixed;bottom:80px;right:20px;width:320px;max-height:480px;background:var(--sidebar-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 8px 24px var(--shadow-color);z-index:300;display:none;flex-direction:column;font-family:IBM Plex Mono,monospace;font-size:12px}.syntax-debug-panel.visible{display:flex}.syntax-debug-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border-color);font-weight:600;font-size:12px;color:var(--text-color);flex-shrink:0}.syntax-debug-close{background:none;border:none;color:var(--tertiary-text);cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:3px;transition:color .2s}.syntax-debug-close:hover{color:var(--text-color)}.syntax-debug-actions{display:flex;gap:6px;padding:10px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0}.syntax-debug-btn{flex:1;padding:5px 8px;border:1px solid var(--border-color);border-radius:5px;background:var(--input-bg);color:var(--text-color);cursor:pointer;font-family:IBM Plex Mono,monospace;font-size:11px;transition:background .15s,border-color .15s}.syntax-debug-btn:hover{border-color:var(--cursor-color);color:var(--cursor-color)}.syntax-debug-stats{display:flex;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.syntax-stat-chip{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;background:#8080801a;color:var(--secondary-text)}.syntax-stat-chip.verbs{background:#60a5fa26;color:#60a5fa}.syntax-stat-chip.nouns{background:#ff6b6b26;color:#ff6b6b}.syntax-stat-chip.adjs{background:#ffa50026;color:orange}.syntax-stat-chip.advs{background:#a855f726;color:#a855f7}.syntax-stat-chip.conjs{background:#84cc1626;color:#84cc16}.syntax-debug-body{overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:4px}.syntax-debug-word{display:flex;justify-content:space-between;align-items:center;padding:3px 0;border-bottom:1px solid rgba(128,128,128,.07)}.syntax-debug-word-text{color:var(--text-color);font-size:12px}.syntax-debug-word-tag{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.tag-verb{background:#60a5fa33;color:#60a5fa}.tag-noun{background:#ff6b6b33;color:#ff6b6b}.tag-adjective{background:#ffa50033;color:orange}.tag-adverb{background:#a855f733;color:#a855f7}.tag-conjunction{background:#84cc1633;color:#84cc16}.tag-none{background:#8080801a;color:var(--tertiary-text)}.syntax-debug-empty{color:var(--tertiary-text);text-align:center;padding:20px 0;font-style:italic}.editor::-webkit-scrollbar{display:none}.editor{-ms-overflow-style:none;scrollbar-width:none}body.focus-mode .header{opacity:0;transform:translateY(-100%);pointer-events:none}body.focus-mode .format-toolbar{opacity:0;pointer-events:none;transform:translate(-50%) translateY(20px)}body.focus-mode .editor{padding-top:100px}.editor::selection{background-color:#0080ff33}.editor::-moz-selection{background-color:#0080ff33}.editor{-moz-tab-size:4;tab-size:4}.format-toolbar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;padding:8px 12px;display:flex;gap:4px;align-items:center;box-shadow:0 4px 16px var(--shadow-color),0 0 0 1px var(--border-color);z-index:1000;transition:opacity .3s ease,transform .3s ease;max-width:90vw;overflow-x:auto;overflow-y:hidden}.format-toolbar::-webkit-scrollbar{height:0}.stats-toolbar{position:fixed;bottom:88px;left:50%;transform:translate(-50%);background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;padding:6px 16px;display:flex;gap:12px;align-items:center;font-size:12px;color:var(--secondary-text);box-shadow:0 2px 8px var(--shadow-color),0 0 0 1px var(--border-color);z-index:999;transition:opacity .3s ease;-webkit-user-select:none;user-select:none}body.focus-mode .stats-toolbar{bottom:40px}.stats-separator{color:#1a1a1a4d}.format-btn{background:transparent;border:none;color:var(--toolbar-color);cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;min-width:32px;height:32px}.format-btn:hover{background:var(--input-bg);color:var(--toolbar-hover)}.format-btn:active{transform:scale(.95);background:var(--input-bg)}.format-btn.active{background:var(--input-bg);color:var(--toolbar-hover)}.format-btn svg{width:16px;height:16px;stroke:currentColor}.toolbar-divider{width:1px;height:24px;background:var(--border-color);margin:0 4px}.word-count-toolbar{font-size:12px;color:#1a1a1a99;padding:0 8px;-webkit-user-select:none;user-select:none;white-space:nowrap}.user-email-toolbar{font-size:11px;color:#1a1a1a80;padding:0 6px;-webkit-user-select:none;user-select:none;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sign-out-toolbar:hover{color:#e74c3c;background:#e74c3c14}.test-features-panel{position:fixed;top:0;left:-400px;width:400px;height:100vh;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid rgba(0,0,0,.08);box-shadow:4px 0 12px #00000014;z-index:200;transition:left .3s ease;display:flex;flex-direction:column}.test-features-panel.open{left:0}body.focus-mode .test-features-panel{left:-400px!important}.font-picker-menu{position:fixed;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;box-shadow:0 4px 16px var(--shadow-color),0 0 0 1px var(--border-color);z-index:1001;min-width:180px;overflow:hidden}@media (max-width: 768px){.font-picker-menu{bottom:80px!important;left:50%!important;transform:translate(-50%)!important}}.font-option{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;cursor:pointer;transition:background .2s ease;color:var(--text-color)}.font-option:hover,.font-option.active{background:var(--input-bg)}.font-name{font-size:14px;font-weight:500}.font-size-label{color:var(--secondary-text);font-size:12px;font-weight:400;margin-left:4px}.font-check{color:var(--cursor-color);font-size:14px;opacity:0;transition:opacity .2s ease}.font-option.active .font-check{opacity:1}.heading-option{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;cursor:pointer;transition:background .2s ease;color:var(--text-color)}.heading-option:hover,.heading-option.active{background:var(--input-bg)}.heading-option.active .font-check{opacity:1}.syntax-options-menu{min-width:200px}.syntax-option{display:flex;align-items:center;gap:10px;padding:10px 16px;cursor:pointer;transition:background .2s ease;color:var(--text-color)}.syntax-option:hover,.syntax-option.active{background:var(--input-bg)}.syntax-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.syntax-option .font-name{flex:1}.syntax-option .font-check{color:var(--cursor-color);font-size:14px;opacity:0;transition:opacity .2s ease}.syntax-option.active .font-check{opacity:1}.test-features-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.08)}.test-features-header h3{font-size:16px;font-weight:600;color:var(--text-color);margin:0}.test-features-close{background:none;border:none;color:var(--toolbar-color);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.test-features-close:hover{background:#0000000d}.test-features-content{flex:1;overflow-y:auto;padding:16px 20px}.test-feature-item{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(0,0,0,.05)}.test-feature-item:last-child{border-bottom:none}.test-feature-item label{display:flex;align-items:center;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-color)}.feature-checkbox{width:18px;height:18px;margin-right:10px;cursor:pointer;accent-color:var(--cursor-color)}.test-feature-item label span{flex:1}.feature-description{margin:6px 0 0 28px;font-size:12px;color:#1a1a1a99;line-height:1.4}.beats-panel{position:fixed;top:0;right:-350px;width:350px;height:100vh;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid var(--border-color);box-shadow:-4px 0 12px var(--shadow-color);z-index:200;transition:right .3s ease;display:flex;flex-direction:column}.beats-panel.open{right:0}body.focus-mode .beats-panel{right:-350px!important}.beats-content{flex:1;overflow-y:auto;padding:16px 20px}.beats-input-container{display:flex;gap:8px;margin-bottom:16px}.beat-input{flex:1;padding:8px 12px;border:1px solid var(--input-border);border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:14px;color:var(--text-color);background:var(--input-bg);outline:none;transition:border-color .2s ease}.beat-input:focus{border-color:var(--cursor-color)}.add-beat-btn{width:36px;height:36px;border:none;background:var(--cursor-color);color:#fff;border-radius:6px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.add-beat-btn:hover{background:#06c}.add-beat-btn:active{transform:scale(.95)}.beats-list{display:flex;flex-direction:column;gap:8px}.beat-item{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#8080800d;border-radius:6px;transition:background .2s ease}.beat-item:hover{background:#8080801a}.beat-item.completed{opacity:.5}.beat-checkbox{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--cursor-color)}.beat-text{flex:1;font-size:14px;line-height:1.5;color:var(--text-color);word-wrap:break-word}.beat-item.completed .beat-text{text-decoration:line-through}.beat-delete{background:none;border:none;color:var(--tertiary-text);cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:color .2s ease,background .2s ease;flex-shrink:0}.beat-delete:hover{color:#dc3545;background:#dc35451a}.beats-empty{text-align:center;padding:40px 20px;color:var(--tertiary-text);font-size:14px;font-style:italic}.characters-panel{position:fixed;top:0;right:-400px;width:400px;height:100vh;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid var(--border-color);box-shadow:-4px 0 12px var(--shadow-color);z-index:201;transition:right .3s ease;display:flex;flex-direction:column}.characters-panel.open{right:0}body.focus-mode .characters-panel{right:-400px!important}.characters-content{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:16px 20px}.add-character-btn{padding:10px 16px;background:var(--cursor-color);color:var(--bg-color);border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s ease;margin-bottom:16px}.add-character-btn:hover{background:var(--toolbar-hover)}.characters-list{flex:1;overflow-y:auto}.character-card{background:var(--input-bg);border-radius:8px;margin-bottom:12px;overflow:hidden;border:1px solid var(--border-color);transition:border-color .2s ease}.character-card.expanded{border-color:var(--cursor-color)}.character-header{padding:12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.character-header:hover{background:var(--input-border)}.character-title{flex:1}.character-name{font-size:15px;font-weight:600;color:var(--text-color);margin-bottom:2px}.character-role{font-size:12px;color:var(--secondary-text)}.character-actions{display:flex;gap:4px}.character-delete-btn{background:none;border:none;color:var(--secondary-text);cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.character-delete-btn:hover{background:#ff3b301a;color:#ff3b30}.character-body{padding:0 12px 12px;display:none}.character-card.expanded .character-body{display:block}.character-field{margin-bottom:12px}.character-field label{display:block;font-size:12px;font-weight:500;color:var(--secondary-text);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.character-field input,.character-field textarea{width:100%;padding:8px 10px;border:1px solid var(--input-border);border-radius:4px;font-family:IBM Plex Mono,monospace;font-size:13px;background:var(--modal-bg);color:var(--text-color);resize:vertical}.character-field textarea{min-height:60px}.character-field input:focus,.character-field textarea:focus{outline:none;border-color:var(--cursor-color)}.characters-empty{text-align:center;padding:40px 20px;color:var(--tertiary-text);font-size:14px;font-style:italic}@media (max-width: 768px){.header{padding:10px 12px}.toolbar{padding:0;gap:8px}.tool-btn{padding:5px}.tool-btn svg{width:18px;height:18px}.word-count{font-size:12px}.editor{max-width:100%;padding:30px 16px 100px;font-size:16px;line-height:1.6}.format-toolbar{bottom:12px;padding:6px 8px;gap:2px}.format-btn{min-width:32px;height:32px;padding:6px}.format-btn svg{width:16px;height:16px}.beats-panel{right:-100%;width:100%;max-width:100%}.beats-panel.open{right:0}.test-features-panel{left:-100%;width:100%;max-width:100%}.test-features-panel.open{left:0}body.focus-mode .editor{padding-top:60px}}@media (max-width: 480px){.header{padding:8px 10px}.toolbar{gap:6px}.tool-btn{padding:4px}.tool-btn svg{width:16px;height:16px}.word-count{font-size:11px;margin-left:8px}.editor{padding:24px 24px 90px;font-size:15px;line-height:1.5}.format-toolbar{bottom:10px;padding:5px 6px;gap:1px;border-radius:6px}.format-btn{min-width:28px;height:28px;padding:4px}.format-btn svg{width:14px;height:14px}.stats-toolbar{bottom:55px}body.focus-mode .stats-toolbar{bottom:30px}.beats-header,.test-features-header{padding:12px 16px}.beats-header h3,.test-features-header h3{font-size:14px}.beats-content,.test-features-content{padding:12px 16px}.beat-input{font-size:13px;padding:7px 10px}.test-feature-item label{font-size:13px}.feature-description{font-size:11px;margin-left:26px}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000}.auth-modal.hidden{display:none}.auth-content{background:var(--modal-bg);padding:28px;border-radius:12px;box-shadow:0 20px 60px var(--shadow-color);max-width:400px;width:90%}.auth-content h2{margin:0 0 8px;font-size:28px;font-weight:600;text-align:center}.auth-subtitle{margin:0 0 24px;color:var(--secondary-text);font-size:14px;text-align:center}#authForm{display:flex;flex-direction:column;gap:12px}#authForm input{padding:12px 16px;border:1px solid var(--input-border);border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:14px;background:var(--input-bg);color:var(--text-color);outline:none;transition:border-color .2s ease}#authForm input:focus{border-color:var(--cursor-color)}#authForm button{padding:12px 16px;background:var(--cursor-color);color:var(--bg-color);border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s ease}#authForm button:hover{background:#06c}#authForm button:disabled{background:#0080ff80;cursor:not-allowed}.auth-error{margin:12px 0 0;color:#dc3545;font-size:13px;min-height:0;display:none}.auth-error:not(:empty){display:block;min-height:18px}.auth-loading{margin:12px 0 0;color:var(--text-secondary);font-size:13px;text-align:center}.documents-sidebar{position:fixed;top:0;left:-350px;width:350px;height:100vh;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--border-color);box-shadow:4px 0 12px var(--shadow-color);z-index:1100;transition:left .3s ease;display:flex;flex-direction:column}.documents-sidebar.open{left:0}body.focus-mode .documents-sidebar{left:-350px!important}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--border-color)}.sidebar-header h3{font-size:14px;font-weight:500;margin:0}.close-sidebar-btn{background:none;border:none;color:var(--toolbar-color);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.close-sidebar-btn:hover{background:var(--input-bg)}.new-doc-btn{margin:16px 20px;padding:10px 16px;background:var(--cursor-color);color:#fff;border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}body.dark-mode .new-doc-btn{color:#000}.new-doc-btn:hover{background:var(--toolbar-hover)}.documents-list{flex:1;overflow-y:auto;padding:0 20px}.document-item{padding:12px;margin-bottom:8px;background:var(--input-bg);border-radius:6px;cursor:pointer;transition:background .2s ease;display:flex;align-items:center;justify-content:space-between;gap:8px}.document-item:hover{background:var(--input-border)}.document-item.active{background:var(--input-bg);border:1px solid var(--cursor-color)}.document-item-content{flex:1;min-width:0}.document-item-title{font-size:14px;font-weight:500;color:var(--text-color);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-item-meta{font-size:12px;color:var(--secondary-text)}.document-item-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.document-item:hover .document-item-actions{opacity:1}.document-rename-btn,.document-delete-btn{background:none;border:none;color:var(--secondary-text);cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease;flex-shrink:0}.document-rename-btn:hover{background:var(--input-bg);color:var(--toolbar-hover)}.document-delete-btn:hover{background:#ff3b301a;color:#ff3b30}.documents-empty{text-align:center;padding:40px 20px;color:var(--tertiary-text);font-size:14px}.sidebar-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px}.user-email{font-size:12px;color:var(--secondary-text);word-break:break-all}.sign-out-btn{padding:10px 16px;background:transparent;border:1px solid var(--border-color);border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;color:var(--text-color);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;justify-content:center}.sign-out-btn svg{flex-shrink:0}.sign-out-btn:hover{background:var(--input-bg);border-color:var(--text-color);transform:translateY(-1px)}.version-info{position:fixed;bottom:8px;right:12px;font-size:11px;color:#1a1a1a4d;font-family:IBM Plex Mono,monospace;pointer-events:none;z-index:10}@media (max-width: 768px){.version-info{bottom:80px;font-size:10px}}.share-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:10000;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.share-modal.active{display:flex}.share-modal-content{background:var(--modal-bg);border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px var(--shadow-color)}.share-modal-header{padding:20px 24px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.share-modal-header h3{font-size:18px;font-weight:600;color:var(--text-color)}.share-modal-close{background:none;border:none;cursor:pointer;color:var(--toolbar-color);padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.share-modal-close:hover{background:var(--input-bg)}.share-modal-body{padding:24px}.share-section{margin-bottom:24px}.share-section:last-child{margin-bottom:0}.share-label{display:block;font-size:14px;font-weight:500;color:var(--text-color);margin-bottom:12px}.share-expiration{margin-bottom:16px}.share-expiration label{display:block;font-size:13px;color:var(--secondary-text);margin-bottom:8px}.share-expiration-select{width:100%;padding:10px 12px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--text-color);font-family:IBM Plex Mono,monospace;font-size:14px;cursor:pointer;transition:border-color .2s ease}.share-expiration-select:hover{border-color:var(--toolbar-hover)}.share-expiration-select:focus{outline:none;border-color:var(--toolbar-hover)}.create-share-btn{width:100%;padding:12px;background:var(--cursor-color);border:none;border-radius:8px;color:#fff;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.create-share-btn:hover{opacity:.9}.create-share-btn:disabled{opacity:.5;cursor:not-allowed}.system-debug-toggle{position:fixed;bottom:20px;right:20px;width:50px;height:50px;border-radius:50%;background:#ff6b6b;border:2px solid #fff;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 4px 12px #0000004d;z-index:10000;transition:transform .2s ease}.system-debug-toggle:hover{transform:scale(1.1)}.system-debug-panel{position:fixed;top:20px;right:20px;width:450px;max-height:calc(100vh - 40px);background:var(--sidebar-bg);border:2px solid var(--border-color);border-radius:12px;box-shadow:0 8px 32px #0000004d;z-index:9999;display:none;flex-direction:column}.system-debug-panel.visible{display:flex}.debug-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color);font-weight:600;font-size:14px;color:var(--toolbar-color)}.debug-close-btn{background:none;border:none;color:var(--toolbar-color);font-size:24px;line-height:1;cursor:pointer;padding:0;width:24px;height:24px}.debug-close-btn:hover{color:var(--toolbar-hover)}.debug-panel-body{flex:1;overflow-y:auto;padding:16px}.debug-section{margin-bottom:20px}.debug-section h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;color:var(--toolbar-color);opacity:.7;font-weight:600}.debug-content{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px;font-family:Geist Mono,monospace;font-size:11px;line-height:1.6;color:var(--toolbar-color)}.debug-log{background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;padding:12px;font-family:Geist Mono,monospace;font-size:11px;line-height:1.6;max-height:150px;overflow-y:auto;color:var(--toolbar-color)}.debug-log.error-log{color:#ff6b6b}.debug-log-entry{padding:4px 0;border-bottom:1px solid var(--border-color)}.debug-log-entry:last-child{border-bottom:none}.debug-log-time{opacity:.5;margin-right:8px}.debug-actions{display:flex;gap:8px;margin-top:16px}.debug-btn{flex:1;padding:8px 12px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--toolbar-color);font-family:IBM Plex Mono,monospace;font-size:11px;cursor:pointer;transition:all .2s ease}.debug-btn:hover{background:var(--toolbar-hover);color:#fff}.status-ok{color:#51cf66}.status-error{color:#ff6b6b}.status-warning{color:#ffd43b}@media (max-width: 768px){.system-debug-panel{top:10px;right:10px;left:10px;width:auto}.system-debug-toggle{bottom:80px}}.active-shares-list{display:flex;flex-direction:column;gap:12px}.share-item{padding:14px;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;gap:10px}.share-item-header{display:flex;align-items:center;justify-content:space-between}.share-item-info{display:flex;flex-direction:column;gap:4px}.share-item-date{font-size:12px;color:var(--secondary-text)}.share-item-stats{font-size:11px;color:var(--tertiary-text)}.share-item-actions{display:flex;gap:8px}.copy-link-btn,.delete-share-btn{padding:6px 12px;border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.copy-link-btn{background:var(--cursor-color);color:#fff}.copy-link-btn:hover{opacity:.9}.delete-share-btn{background:transparent;color:#ff6b6b;border:1px solid #ff6b6b}.delete-share-btn:hover{background:#ff6b6b1a}.share-link-display{display:flex;gap:8px;align-items:center}.share-link-text{flex:1;padding:10px 12px;background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:12px;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(100px);background:var(--modal-bg);color:var(--text-color);padding:12px 20px;border-radius:8px;font-family:IBM Plex Mono,monospace;font-size:14px;box-shadow:0 4px 12px var(--shadow-color);border:1px solid var(--border-color);z-index:10001;opacity:0;transition:all .3s ease;pointer-events:none}.toast.show{transform:translate(-50%) translateY(0);opacity:1}.syntax-tooltip{position:fixed;background:var(--modal-bg);border:1px solid var(--border-color);border-radius:8px;padding:12px 14px;box-shadow:0 8px 24px var(--shadow-color);z-index:10002;font-family:IBM Plex Mono,monospace;font-size:13px;max-width:280px;pointer-events:none;opacity:0;transition:opacity .15s ease}.syntax-tooltip.visible{opacity:1}.syntax-tooltip-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.syntax-tooltip-word{font-weight:600;color:var(--text-color);font-size:14px}.syntax-tooltip-type{font-size:10px;text-transform:uppercase;padding:2px 6px;border-radius:4px;font-weight:600;letter-spacing:.5px}.syntax-tooltip-type.adjective{background:#ffa50033;color:orange}.syntax-tooltip-type.noun{background:#ff6b6b33;color:#ff6b6b}.syntax-tooltip-type.verb{background:#60a5fa33;color:#60a5fa}.syntax-tooltip-type.adverb{background:#a855f733;color:#a855f7}.syntax-tooltip-type.conjunction{background:#84cc1633;color:#84cc16}.syntax-tooltip-label{font-size:11px;color:var(--secondary-text);margin-bottom:6px;font-weight:500}.syntax-tooltip-suggestions{display:flex;flex-direction:column;gap:4px}.syntax-tooltip-suggestion{padding:4px 8px;background:var(--input-bg);border-radius:4px;color:var(--text-color);font-size:12px;transition:background .15s}.syntax-tooltip-suggestion:hover{background:#0080ff14}.syntax-tooltip-alternatives{margin-top:4px}.syntax-tooltip-no-alternatives{color:var(--tertiary-text);font-size:11px;font-style:italic}@media (max-width: 768px){.share-modal-content{width:95%;max-height:90vh}.share-modal-body{padding:20px}.toast{bottom:84px;width:90%;max-width:400px}}
