@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"SF Mono", "Fira Code", "JetBrains Mono", monospace;--ease-spring:cubic-bezier(.16, 1, .3, 1);--transition-fast:.15s var(--ease-spring);--transition-normal:.25s var(--ease-spring);--transition-slow:.4s var(--ease-spring);--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}[data-theme=dark]{--bg-base:#09090b;--bg-surface:#0f0f12;--bg-elevated:#18181c;--bg-overlay:#0009;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff29;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-tertiary:#52525b;--text-inverse:#09090b;--accent:#6366f1;--accent-hover:#818cf8;--accent-muted:#6366f126;--accent-glow:#6366f166;--success:#22c55e;--success-muted:#22c55e1f;--error:#ef4444;--error-muted:#ef44441f;--warning:#f59e0b;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 12px 48px #0009;--shadow-glow:0 0 40px #6366f114;--glass-bg:#ffffff08;--glass-hover:#ffffff0f;--sidebar-bg:#0c0c0f;--preview-bg:#09090b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg-base:#fafafa;--bg-surface:#fff;--bg-elevated:#f4f4f5;--bg-overlay:#fffc;--border-subtle:#0000000a;--border-default:#00000014;--border-strong:#00000024;--text-primary:#09090b;--text-secondary:#71717a;--text-tertiary:#a1a1aa;--text-inverse:#fafafa;--accent:#6366f1;--accent-hover:#4f46e5;--accent-muted:#6366f114;--accent-glow:#6366f140;--success:#16a34a;--success-muted:#16a34a14;--error:#dc2626;--error-muted:#dc262614;--warning:#d97706;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 12px 48px #0000001f;--shadow-glow:0 0 40px #6366f10f;--glass-bg:#00000005;--glass-hover:#0000000a;--sidebar-bg:#fff;--preview-bg:#f8f8fa;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-base);min-height:100vh;color:var(--text-primary);transition:background-color var(--transition-normal), color var(--transition-normal);overflow:hidden}::selection{background:var(--accent);color:#fff}button{background:var(--glass-bg);border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:500;display:inline-flex}button:hover:not(:disabled){background:var(--glass-hover);border-color:var(--border-strong)}button:active:not(:disabled){transform:scale(.98)}button.primary{background:var(--accent);color:#fff;border-color:#0000;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 4px 20px var(--accent-glow)}button:disabled{opacity:.4;cursor:not-allowed}input,textarea{background:var(--bg-surface);border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);width:100%;padding:12px 16px;font-family:inherit;font-size:.9375rem}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);outline:none}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 20px 4px var(--accent-glow)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-in{animation:fade-in .4s var(--ease-spring) forwards}.delay-100{opacity:0;animation-delay:.1s}.delay-200{opacity:0;animation-delay:.2s}.glass-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:background var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);padding:32px}.container{max-width:1000px;margin:0 auto;padding:0 2rem}.app-wrapper{background:var(--bg-base);height:100vh;transition:background var(--transition-normal);flex-direction:column;display:flex;overflow:hidden}.navbar{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);z-index:100;height:56px;min-height:56px;transition:background var(--transition-normal), border-color var(--transition-normal);justify-content:space-between;align-items:center;padding:0 24px;display:flex;position:relative;overflow:visible}.brand{color:var(--text-primary);letter-spacing:-.02em;white-space:nowrap;flex:none;align-items:center;gap:10px;font-size:1.125rem;font-weight:700;display:flex}.brand-text{transition:opacity .2s}.brand-icon{color:var(--accent)}.tabs-nav-header{align-items:center;gap:4px;height:100%;display:flex}.tab-btn-header{height:100%;color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:0 20px;font-size:.875rem;font-weight:500;display:flex;position:relative}.tab-btn-header:hover{color:var(--text-primary);background:var(--glass-hover);box-shadow:none;transform:none}.tab-btn-header.active{color:var(--accent);border-bottom-color:var(--accent);background:0 0}.tab-btn-header.active:hover{background:var(--accent-muted)}.user-profile{flex:none;justify-content:flex-end;align-items:center;gap:12px;display:flex;position:relative}.avatar-btn{background:var(--surface-secondary);border:1px solid var(--border-subtle);cursor:pointer;color:var(--text-secondary);border-radius:100px;align-items:center;gap:8px;padding:4px 8px 4px 4px;transition:all .2s;display:flex}.avatar-btn:hover,.avatar-btn.active{background:var(--surface-tertiary);border-color:var(--accent-subtle);color:var(--text-primary)}.avatar-circle{background:linear-gradient(135deg, var(--accent), var(--accent-hover));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:600;display:flex;overflow:hidden;box-shadow:0 2px 8px #6366f14d}.avatar-img{object-fit:cover;width:100%;height:100%;display:block}.sync-status{color:var(--accent);opacity:.8;margin-top:2px;font-size:.6875rem;font-weight:500;display:block}.avatar-btn .chevron{opacity:.6;transition:transform .2s}.avatar-btn .chevron.open{transform:rotate(180deg)}.profile-dropdown{z-index:1000;border:1px solid var(--border-subtle);background:var(--bg-surface);width:240px;padding:8px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 10px 25px -5px #0003,0 8px 10px -6px #0000001a}@media (width<=480px){.profile-dropdown{width:calc(100vw - 24px);max-width:280px;top:calc(100% + 8px);right:12px}}.dropdown-header{padding:12px 16px}.dropdown-header .user-email{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.dropdown-divider{background:var(--border-subtle);height:1px;margin:4px 8px}.dropdown-item{border-radius:var(--radius-md);width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 12px;font-size:.875rem;transition:all .15s;display:flex}.dropdown-item:hover{background:var(--surface-secondary);color:var(--text-primary)}.dropdown-item svg{opacity:.7}.theme-switch-item{cursor:default;justify-content:space-between}.theme-switch-item:hover{background:0 0}.theme-switch-item .item-label{align-items:center;gap:12px;display:flex}.logout-item:hover{color:#ef4444;background:#ef444414}.user-email{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:.8125rem;overflow:hidden}.theme-toggle{background:var(--bg-elevated);border:1px solid var(--border-default);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;width:48px;height:26px;padding:0;display:flex;position:relative}.theme-toggle:hover{border-color:var(--border-strong);box-shadow:none;transform:none}.theme-toggle-thumb{background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;left:3px;box-shadow:0 1px 3px #0000004d}[data-theme=light] .theme-toggle-thumb{transform:translate(22px)}.theme-toggle-thumb svg{color:#fff;width:12px;height:12px}.login-container{background:var(--bg-base);flex:1;justify-content:center;align-items:center;padding:2rem;display:flex;position:relative;overflow:hidden}.login-container:before,.login-container:after{content:"";filter:blur(120px);opacity:.4;pointer-events:none;border-radius:50%;position:absolute}.login-container:before{background:var(--accent);opacity:.08;width:500px;height:500px;top:-200px;right:-100px}.login-container:after{opacity:.06;background:#a855f7;width:400px;height:400px;bottom:-150px;left:-100px}.login-card{text-align:center;z-index:1;width:100%;max-width:420px;position:relative}.login-card h1{letter-spacing:-.02em;margin-bottom:8px;font-size:1.75rem;font-weight:700}.login-card p{color:var(--text-secondary);margin-bottom:36px;font-size:.9375rem;line-height:1.6}.login-icon{border-radius:var(--radius-lg);background:var(--accent-muted);justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 28px;display:flex}.google-btn{border-radius:var(--radius-md);width:100%;padding:14px 24px;font-size:.9375rem;font-weight:600}.dashboard-fullscreen{flex-direction:column;flex:1;display:flex;overflow:hidden}.scratchpad-wrapper{background:var(--bg-base);flex-direction:column;flex:1;padding:24px 24px 0;display:flex;overflow:hidden}.scratchpad-inner{flex-direction:column;flex:1;width:100%;max-width:900px;margin:0 auto;display:flex;overflow:hidden}.scratchpad-header{flex-shrink:0;margin-bottom:16px}.scratchpad-header h1{letter-spacing:-.02em;margin-bottom:6px;font-size:1.75rem;font-weight:700}.scratchpad-header p{color:var(--text-secondary);font-size:.9375rem}.scratchpad-panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-sm);transition:background var(--transition-normal), border-color var(--transition-normal);flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.notes-textarea{color:var(--text-primary);resize:none;font-size:1rem;line-height:1.8;font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1;padding:28px 32px;overflow-y:auto}.notes-textarea::placeholder{color:var(--text-tertiary)}.toolbar{border-top:1px solid var(--border-subtle);background:var(--bg-elevated);border-radius:0 0 var(--radius-lg) var(--radius-lg);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.file-vault-fullscreen{background:var(--bg-base);width:100%;height:calc(100vh - 56px);display:flex;overflow:hidden}.files-sidebar{background:var(--sidebar-bg);border-right:1px solid var(--border-subtle);width:300px;min-width:300px;transition:background var(--transition-normal), border-color var(--transition-normal);animation:slide-in-left .3s var(--ease-spring) forwards;flex-direction:column;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border-subtle);padding:16px 16px 12px}.sidebar-header h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-size:.6875rem;font-weight:600}.dropzone{border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--glass-bg);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;align-items:center;gap:8px;margin:12px;padding:20px 16px;display:flex}.dropzone:hover{border-color:var(--accent);background:var(--accent-muted)}.dropzone-label{color:var(--text-primary);font-size:.8125rem;font-weight:500}.dropzone-sublabel{color:var(--text-tertiary);font-size:.75rem}.file-list-wrapper{flex:1;padding:8px 12px 12px;overflow-y:auto}.file-list-empty{color:var(--text-tertiary);text-align:center;padding:32px 16px;font-size:.8125rem}.file-item{border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;margin-bottom:2px;padding:8px 12px;display:flex}.file-item.selectable{cursor:pointer}.file-item:hover{background:var(--glass-hover)}.file-item.selected{background:var(--accent-muted);border-color:var(--accent)}.file-info{flex:1;align-items:center;gap:10px;min-width:0;display:flex;overflow:hidden}.file-icon{border-radius:var(--radius-sm);background:var(--accent-muted);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.file-name{white-space:nowrap;text-overflow:ellipsis;color:var(--text-primary);font-size:.8125rem;font-weight:500;overflow:hidden}.file-actions{opacity:0;transition:opacity var(--transition-fast);gap:2px;display:flex}.file-item:hover .file-actions,.file-item.selected .file-actions{opacity:1}.icon-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:6px}.icon-btn:hover{color:var(--text-primary);background:var(--glass-hover);box-shadow:none;transform:none}.icon-btn.small{padding:4px}.icon-btn.danger:hover{color:var(--error);background:var(--error-muted)}.preview-pane-fullscreen{background:var(--preview-bg);transition:background var(--transition-normal);flex-direction:column;flex:1;display:flex;position:relative}.preview-header-fullscreen{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);height:48px;min-height:48px;transition:background var(--transition-normal), border-color var(--transition-normal);justify-content:space-between;align-items:center;padding:0 16px;display:flex}.preview-header-left{align-items:center;gap:12px;display:flex}.hamburger-btn{margin:0}.preview-filename{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.preview-content-viewer{background-image:linear-gradient(45deg, var(--glass-bg) 25%, transparent 25%), linear-gradient(-45deg, var(--glass-bg) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--glass-bg) 75%), linear-gradient(-45deg, transparent 75%, var(--glass-bg) 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:auto}.preview-content-viewer iframe{background:#fff;border:none;width:100%;height:100%}.preview-content-viewer img{border-radius:var(--radius-sm);object-fit:contain;max-width:95%;max-height:95%;box-shadow:var(--shadow-lg)}.preview-content-viewer video{border-radius:var(--radius-sm);object-fit:contain;max-width:95%;max-height:95%}.preview-empty{color:var(--text-tertiary);text-align:center;flex-direction:column;align-items:center;gap:16px;animation:3s ease-in-out infinite float;display:flex}.preview-empty p{font-size:.875rem}.editor-area{background:var(--bg-surface);transition:background var(--transition-normal);flex:1;display:flex;overflow:hidden}.doc-editor{width:100%;height:100%;font-family:var(--font-mono);color:var(--text-primary);resize:none;tab-size:4;background:0 0;border:none;outline:none;flex:1;padding:32px 40px;font-size:.9rem;line-height:1.8;overflow-y:auto}.doc-editor::placeholder{color:var(--text-tertiary);font-family:var(--font-sans);font-style:italic}.editor-area-empty{justify-content:center;align-items:center}.save-status{color:var(--text-tertiary);justify-content:flex-end;align-items:center;gap:6px;min-width:80px;font-size:.75rem;font-weight:500;display:flex}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.styled-scrollbar::-webkit-scrollbar{width:5px}.styled-scrollbar::-webkit-scrollbar-track{background:0 0}.styled-scrollbar::-webkit-scrollbar-thumb{background-color:var(--border-default);border-radius:var(--radius-full)}.styled-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--border-strong)}@media (width<=768px){.brand{font-size:1rem}.tab-btn-header{padding:0 12px;font-size:.8125rem}.tab-btn-header span.tab-label,.user-email{display:none}.files-sidebar{width:260px;min-width:260px}.scratchpad-wrapper{padding:24px 16px}.navbar .brand .brand-text{display:none!important}.user-profile{gap:4px}.navbar{padding:0 8px}}
