:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{width:100%;max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.container{display:flex;flex-direction:row;gap:2rem;text-align:left}.column{flex:1;display:flex;flex-direction:column;gap:1rem;background:#333;padding:1.5rem;border-radius:8px}label{display:block;margin-bottom:.5rem;font-weight:700}select,textarea{width:100%;padding:.5rem;border-radius:4px;border:1px solid #555;background:#444;color:#fff;font-family:inherit;font-size:16px}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.primary-btn{background-color:#646cff;color:#fff;width:100%}.primary-btn:hover{background-color:#535bf2}.primary-btn:disabled{background-color:#444;cursor:not-allowed}.refresh-btn{padding:.4rem .8rem;background:#444;color:#e0e0e0;border:1px solid #666;border-radius:6px;cursor:pointer;font-size:.85em;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:.3rem}.refresh-btn:hover:not(:disabled){background:#535bf2;border-color:#646cff;transform:translateY(-1px)}.refresh-btn:disabled{opacity:.8;cursor:not-allowed}.refresh-btn .spinning{display:inline-block;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.export-btn{margin-left:.5rem;padding:.4em .8em;font-size:.9em;font-weight:600;box-shadow:0 1px #1b1f231a}.header{margin-bottom:2rem;color:#fff;margin:0}.header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.logout-btn{padding:.5rem 1.5rem;background:#444;color:#fff;border:1px solid #666;border-radius:6px;cursor:pointer;font-size:.9em;font-weight:500;transition:all .2s ease}.logout-btn:hover{background:#555;border-color:#888;transform:translateY(-1px)}.ai-provider-badge{padding:.5rem 1rem;background:#646cff1a;color:#9ca3ff;border:1px solid rgba(100,108,255,.3);border-radius:8px;font-size:.85em;font-weight:600;display:flex;align-items:center;gap:.4rem}.editor-container{background:#fff;color:#000;border-radius:4px;min-height:500px;border:1px solid #ccc}h1,h2,h3{font-family:Inter,system-ui,sans-serif;color:#333}.ql-editor table{width:100%;border-collapse:collapse;margin:1rem 0}.ql-editor th,.ql-editor td{border:1px solid #ddd;padding:8px;text-align:left}.ql-editor th{background-color:#f2f2f2;font-weight:700}.ql-editor h1{font-size:2em;border-bottom:1px solid #eee;padding-bottom:.3em}.ql-editor h2{font-size:1.5em;border-bottom:1px solid #eee;padding-bottom:.3em;margin-top:1em}.ql-editor ul{padding-left:1.5em}.ql-editor li{margin-bottom:.5em}h3{font-family:Inter,system-ui,sans-serif;color:#333}.menubar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem;background:#f8f9fa;border-bottom:1px solid #e1e4e8;border-radius:4px 4px 0 0}.button-group{display:flex;gap:.25rem;align-items:center}.menu-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:1px solid transparent;border-radius:4px;color:#586069;cursor:pointer;transition:all .2s}.menu-btn:hover{background-color:#e1e4e8;color:#24292e}.menu-btn.is-active{background-color:#e1e4e8;color:#0366d6;border-color:#e1e4e8}.menu-btn:disabled{opacity:.3;cursor:not-allowed}.menu-btn svg{width:16px;height:16px}.divider{width:1px;height:24px;background-color:#e1e4e8;margin:0 .5rem}.tiptap-content{padding:1rem;min-height:400px;outline:none;overflow-y:auto}.tiptap-content .ProseMirror{outline:none;min-height:100%}.tiptap-content table{border-collapse:collapse;table-layout:fixed;width:100%;margin:0;overflow:hidden}.tiptap-content td,.tiptap-content th{min-width:1em;border:2px solid #ced4da;padding:3px 5px;vertical-align:top;box-sizing:border-box;position:relative}.tiptap-content th{font-weight:700;text-align:left;background-color:#f1f3f5}.tiptap-content .selectedCell:after{z-index:2;position:absolute;content:"";inset:0;background:#c8c8ff66;pointer-events:none}.tiptap-content .column-resize-handle{position:absolute;right:-2px;top:0;bottom:0;width:4px;background-color:#adf;pointer-events:none}.tiptap-content h1{font-size:1.8em;margin-top:.5em;margin-bottom:.5em}.tiptap-content h2{font-size:1.4em;margin-top:.5em;margin-bottom:.5em}.tiptap-content ul,.tiptap-content ol{padding-left:1.5em}.tiptap-content li{margin-bottom:.2em}.preview-text{margin:0;padding:0;white-space:pre-wrap;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85em;line-height:1.6;color:#d4d4d4;background:transparent}.template-preview-container{margin:.5rem 0;background:#3a3a3a;border-radius:6px;overflow:hidden;border:1px solid #555}.preview-header{padding:.75rem 1rem;background:#3a3a3a;color:#e0e0e0;font-size:.95em;font-weight:500;border-bottom:1px solid #555}.template-preview-content{padding:1rem;background:#2a2a2a;max-height:300px;overflow-y:auto}.preview-loading{color:#999;font-style:italic;padding:1rem;text-align:center}.preview-error{color:#ff6b6b;padding:1rem;background:#3a1f1f;border-radius:4px;border-left:3px solid #ff6b6b}.preview-rendered{margin:0;padding:0;color:#e0e0e0;line-height:1.6}.preview-rendered h1{font-size:1.8em;font-weight:700;margin-top:.5em;margin-bottom:.5em;color:#fff;border-bottom:2px solid #555;padding-bottom:.3em}.preview-rendered h2{font-size:1.5em;font-weight:700;margin-top:.8em;margin-bottom:.5em;color:#fff;border-bottom:1px solid #555;padding-bottom:.2em}.preview-rendered h3{font-size:1.2em;font-weight:700;margin-top:.6em;margin-bottom:.4em;color:#f0f0f0}.preview-rendered p{margin:.5em 0}.preview-rendered ul,.preview-rendered ol{margin:.5em 0;padding-left:1.5em}.preview-rendered li{margin-bottom:.3em}.preview-rendered table{border-collapse:collapse;width:100%;margin:1em 0;background:#333}.preview-rendered th,.preview-rendered td{border:1px solid #555;padding:.5em;text-align:left}.preview-rendered th{background:#444;font-weight:700}.preview-rendered strong{font-weight:700;color:#fff}.preview-rendered em{font-style:italic}.preview-rendered code{background:#1a1a1a;padding:.2em .4em;border-radius:3px;font-family:Monaco,Menlo,monospace;font-size:.9em}.preview-rendered pre{background:#1a1a1a;padding:1em;border-radius:4px;overflow-x:auto;margin:.5em 0}.preview-rendered pre code{background:transparent;padding:0}.preview-rendered blockquote{border-left:3px solid #646cff;padding-left:1em;margin:.5em 0;color:#ccc}.preview-rendered hr{border:none;border-top:1px solid #555;margin:1em 0}.preview-rendered a{color:#646cff;text-decoration:none}.preview-rendered a:hover{text-decoration:underline}.template-preview-content::-webkit-scrollbar{width:8px}.template-preview-content::-webkit-scrollbar-track{background:#1a1a1a;border-radius:4px}.template-preview-content::-webkit-scrollbar-thumb{background:#555;border-radius:4px}.template-preview-content::-webkit-scrollbar-thumb:hover{background:#666}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);padding:2rem}.login-box{background:#333;border-radius:12px;padding:3rem 2.5rem;box-shadow:0 8px 32px #0006;max-width:400px;width:100%;text-align:center}.login-header h1{margin:0 0 .5rem;font-size:2em;color:#fff;font-weight:600}.login-header p{margin:0 0 2rem;color:#999;font-size:.95em}.password-input{width:100%;padding:1rem;font-size:1em;border:2px solid #555;border-radius:8px;background:#2a2a2a;color:#fff;margin-bottom:1rem;transition:all .3s ease;box-sizing:border-box}.password-input:focus{outline:none;border-color:#646cff;background:#333}.password-input:disabled{opacity:.6;cursor:not-allowed}.login-button{width:100%;padding:1rem;font-size:1em;font-weight:600;background:#646cff;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;margin-bottom:1rem}.login-button:hover:not(:disabled){background:#535bf2;transform:translateY(-2px);box-shadow:0 4px 12px #646cff66}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{color:#ff6b6b;background:#3a1f1f;padding:.75rem;border-radius:6px;margin-bottom:1rem;border-left:3px solid #ff6b6b;font-size:.9em}.login-footer{color:#666;font-size:.85em;margin:1.5rem 0 0}
