.notes-page { padding: 1rem; } .notes-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem; flex-wrap: wrap; gap: 1rem; } .notes-header h1 { color: #2c3e50; } .notes-filters { display: flex; gap: 1rem; margin-bottom: 1.5rem; align-items: center; flex-wrap: wrap; } .filter-group { display: flex; align-items: center; gap: 0.5rem; } .filter-group label { font-weight: 500; color: #555; white-space: nowrap; } .filter-group select { padding: 0.5rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem; min-width: 180px; } .search-group { flex: 1; min-width: 200px; } .search-group input { width: 100%; padding: 0.5rem 0.75rem; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem; } .search-group input:focus { outline: none; border-color: #667eea; } .notes-list { display: flex; flex-direction: column; gap: 0.75rem; } .note-card { background: white; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); padding: 1rem 1.25rem; cursor: pointer; transition: box-shadow 0.15s, transform 0.15s; } .note-card:hover { box-shadow: 0 3px 8px rgba(0,0,0,0.15); transform: translateY(-1px); } .note-card-title { font-weight: 600; font-size: 1.05rem; color: #2c3e50; margin-bottom: 0.25rem; } .note-card-meta { display: flex; gap: 1rem; font-size: 0.8rem; color: #7f8c8d; flex-wrap: wrap; } .note-card-meta span { display: inline-flex; align-items: center; gap: 0.25rem; } .note-card-snippet { margin-top: 0.5rem; font-size: 0.9rem; color: #555; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; } .note-card-link { padding: 1px 6px; border-radius: 3px; font-size: 0.75rem; background: #eef; color: #667eea; } .note-modal-content { max-width: 800px; } .form-row { display: flex; gap: 1rem; } .form-row .form-group { flex: 1; } .note-editor { display: flex; flex-direction: column; } .editor-panes { display: flex; gap: 1rem; min-height: 300px; } .editor-pane { flex: 1; display: flex; flex-direction: column; } .editor-pane textarea { flex: 1; resize: vertical; font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace; font-size: 0.9rem; line-height: 1.5; } .preview-pane { flex: 1; display: flex; flex-direction: column; overflow-y: auto; } .markdown-preview { flex: 1; padding: 0.75rem; border: 1px solid #ddd; border-radius: 4px; background: #fafafa; font-size: 0.9rem; line-height: 1.6; overflow-y: auto; min-height: 200px; } .markdown-preview h1, .markdown-preview h2, .markdown-preview h3 { margin: 0.75rem 0 0.5rem; color: #2c3e50; } .markdown-preview h1 { font-size: 1.3rem; } .markdown-preview h2 { font-size: 1.15rem; } .markdown-preview h3 { font-size: 1.05rem; } .markdown-preview p { margin-bottom: 0.5rem; } .markdown-preview code { background: #eee; padding: 1px 4px; border-radius: 3px; font-size: 0.85rem; } .markdown-preview pre { background: #282c34; color: #abb2bf; padding: 0.75rem; border-radius: 4px; overflow-x: auto; margin: 0.5rem 0; } .markdown-preview pre code { background: none; padding: 0; color: inherit; } .markdown-preview ul, .markdown-preview ol { padding-left: 1.5rem; margin-bottom: 0.5rem; } .markdown-preview blockquote { border-left: 3px solid #667eea; padding-left: 0.75rem; color: #666; margin: 0.5rem 0; } .markdown-preview table { border-collapse: collapse; margin: 0.5rem 0; } .markdown-preview th, .markdown-preview td { border: 1px solid #ddd; padding: 0.4rem 0.75rem; text-align: left; } .markdown-preview th { background: #f0f0f0; font-weight: 600; } @media (max-width: 768px) { .editor-panes { flex-direction: column; } .form-row { flex-direction: column; gap: 0; } .notes-filters { flex-direction: column; align-items: stretch; } .filter-group select { min-width: 0; width: 100%; } .search-group { min-width: 0; } }