@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-app:#1e1e1e;--bg-surface:#2a2a2a;--bg-surface-elevated:#333;--text-primary:#fff;--text-muted:#a0a0a0;--accent:#5e5ce6;--bg-highlight:#fff3;--font-family:"Inter", system-ui, -apple-system, sans-serif;--base-font-size:16px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-app);color:var(--text-primary);font-family:var(--font-family);font-size:var(--base-font-size);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:text;user-select:text;overscroll-behavior-y:none;line-height:1.4}#app{flex-direction:column;min-height:100vh;display:flex}p,h1,h2,h3,h4,h5,h6,ul,ol,blockquote{margin-bottom:.5rem}h1,h2,h3,h4,h5,h6{letter-spacing:-.01em;margin-top:1rem;font-weight:600;line-height:1.2}h1{font-size:1.8rem}h2{font-size:1.4rem}h3{font-size:1.2rem}.active-word{background-color:var(--bg-highlight);color:var(--text-primary);border-radius:4px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff26 padding-box padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.header-toggle{-webkit-backdrop-filter:blur(10px);z-index:10;background-color:#1e1e1ecc;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0}.header-title{letter-spacing:-.02em;font-size:1.25rem;font-weight:600}.toggle-btn{color:var(--text-primary);cursor:pointer;background-color:#0000;border:1px solid #ffffff1a;border-radius:8px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:background-color .2s,border-color .2s}.toggle-btn:hover{background-color:#ffffff0d;border-color:#fff3}.toggle-btn:active{transform:scale(.98)}.editor-container{flex:1;width:100%;padding:.5rem}.reader-container{flex:1;width:100%;padding:.5rem .5rem 6rem}.editor-textarea{width:100%;color:var(--text-primary);resize:none;font-family:var(--font-family);background-color:#0000;border:none;outline:none;min-height:calc(100vh - 100px);padding:0;font-size:1.1rem;line-height:1.4;overflow:hidden}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);z-index:100;background-color:#0009;transition:opacity .3s;position:fixed;inset:0}.sidebar-content{background-color:#141414;flex-direction:column;width:320px;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;bottom:0;left:0;box-shadow:2px 0 20px #00000080}.sidebar-search-container{border-bottom:1px solid #ffffff0d;flex-direction:row;align-items:center;gap:.5rem;padding:1.5rem 1.5rem 1rem;display:flex}.sidebar-search-input{color:#fff;background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;outline:none;flex:1;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.9rem;transition:border-color .2s,background-color .2s}.sidebar-search-input:focus{background-color:#ffffff14;border-color:#ffffff4d}.sidebar-search-input::placeholder{color:var(--text-muted)}.sidebar-search-options{gap:.5rem;display:flex}.search-option-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:6px;justify-content:center;align-items:center;padding:.4rem;transition:all .2s;display:flex}.search-option-btn:hover{color:#fff;background:#ffffff0d}.search-option-btn.active{color:#fff;background:#ffffff1a;border-color:#ffffff4d}.sidebar-actions{border-bottom:1px solid #ffffff0d;gap:.5rem;padding:1rem 1.5rem;display:flex}.action-btn{color:#fff;cursor:pointer;text-align:center;background-color:#0000;border:1px solid #fff3;border-radius:6px;flex:1;padding:.5rem;font-size:.85rem;font-weight:500;transition:all .2s}.action-btn.primary{color:#000;background-color:#fff;border:none}.action-btn:hover{background-color:#ffffff1a}.action-btn.primary:hover{background-color:#ffffffe6}.action-btn.active{background-color:var(--accent);color:#fff;border-color:var(--accent)}.new-folder-input-container{background-color:#ffffff05;border-bottom:1px solid #ffffff0d;gap:.5rem;max-height:0;padding:0 1.5rem;transition:max-height .3s,padding .3s;display:flex;overflow:hidden}.new-folder-input-container.visible{max-height:100px;padding:1rem 1.5rem}.new-folder-input-container input{color:#fff;background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;outline:none;flex:1;padding:.5rem}.new-folder-input-container button{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:0 1rem;font-weight:500}.folder-item{border-bottom:1px solid #ffffff05;transition:background-color .2s}.folder-item.drag-over{border:1px dashed var(--accent);background-color:#ffffff1a}.folder-header{cursor:pointer;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.folder-header:hover{background-color:#ffffff08}.folder-title{color:#ddd;align-items:center;gap:.5rem;font-weight:600;display:flex}.nested-doc-list{background-color:#0003;list-style:none}.doc-item.nested{border-bottom:none;padding-left:2.5rem}.doc-item.drag-over{border-top:2px solid var(--accent)}.drag-handle{color:var(--text-muted);cursor:grab;padding:.5rem}.drag-handle:active{cursor:grabbing}.empty-state.nested{padding:1rem 1.5rem 1rem 2.5rem;font-size:.85rem}.doc-list{flex:1;list-style:none;overflow-y:auto}.doc-item{cursor:pointer;border-bottom:1px solid #ffffff05;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:background-color .2s;display:flex}.doc-item:hover{background-color:#ffffff05}.doc-item.active{background-color:#ffffff0d;border-left:4px solid #fff}.doc-title{margin-bottom:.25rem;font-weight:500}.doc-date{color:var(--text-muted);font-size:.8rem}.delete-btn{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:.5rem;transition:opacity .2s,color .2s}.doc-item:hover .delete-btn{opacity:1}.delete-btn:hover{color:#ff4d4d}.empty-state{text-align:center;color:var(--text-muted);padding:2rem 1.5rem}.tts-control-bar{bottom:calc(env(safe-area-inset-bottom) + 1.5rem);-webkit-backdrop-filter:blur(20px);z-index:50;background-color:#1e1e1ef2;border:1px solid #ffffff1a;border-radius:50px;align-items:center;gap:1rem;width:max-content;max-width:90vw;padding:.5rem 1rem;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #00000080}.tts-controls-group{align-items:center;gap:.25rem;display:flex}.tts-btn{color:#fff;cursor:pointer;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;padding:.75rem;transition:opacity .2s,transform .1s;display:flex}.tts-btn:hover{opacity:1}.tts-btn:active{transform:scale(.95)}.tts-btn-play{color:#000;cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 .5rem;transition:transform .1s;display:flex}.tts-btn-play:active{transform:scale(.95)}.tts-divider{background-color:#fff3;width:1px;height:24px}.tts-settings-group{align-items:center;gap:1rem;display:flex}.tts-voice-select{color:#fff;opacity:.8;cursor:pointer;justify-content:center;align-items:center;width:48px;height:48px;transition:opacity .2s;display:flex;position:relative}.tts-voice-select:hover{opacity:1}.tts-voice-select select{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.tts-rate-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:24px;min-width:64px;padding:.5rem 1rem;font-size:1.1rem;font-weight:600;transition:background-color .2s,transform .1s}.tts-rate-btn:hover{background-color:#fff3}.tts-rate-btn:active{transform:scale(.95)}@media (width<=500px){.tts-control-bar{width:100vw;max-width:none;padding:1rem .5rem calc(env(safe-area-inset-bottom) + 1rem);box-sizing:border-box;border-bottom:none;border-left:none;border-right:none;border-radius:24px 24px 0 0;justify-content:space-evenly;gap:.25rem;bottom:0;left:0;transform:none}.tts-btn{padding:.75rem}.tts-btn svg,.tts-voice-select>svg{width:28px;height:28px}.tts-btn-play{width:60px;height:60px;margin:0}.tts-btn-play svg{width:32px;height:32px}.tts-settings-group{gap:.5rem}.tts-voice-select{width:44px;height:44px}.tts-rate-btn{min-width:64px;padding:.75rem 1rem;font-size:1.1rem}}
