Files
markdown_editor/static/css/layout.css
2025-10-26 08:14:23 +04:00

162 lines
3.2 KiB
CSS

/* Base layout styles */
html, body {
height: 100%;
margin: 0;
padding: 0;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif;
background-color: var(--bg-primary);
color: var(--text-primary);
transition: background-color 0.3s ease, color 0.3s ease;
}
/* Column Resizer */
.column-resizer {
width: 1px;
background-color: var(--border-color);
cursor: col-resize;
transition: background-color 0.2s ease, width 0.2s ease, box-shadow 0.2s ease;
user-select: none;
flex-shrink: 0;
padding: 0 3px; /* Add invisible padding for easier grab */
margin: 0 -3px; /* Compensate for padding */
}
.column-resizer:hover {
background-color: var(--link-color);
width: 1px;
box-shadow: 0 0 6px rgba(13, 110, 253, 0.3); /* Visual feedback instead of width change */
}
.column-resizer.dragging {
background-color: var(--link-color);
box-shadow: 0 0 8px rgba(13, 110, 253, 0.5);
}
.column-resizer.dragging {
background-color: var(--link-color);
}
/* Adjust container for flex layout */
.container-fluid {
display: flex;
flex-direction: row;
height: calc(100% - 56px);
padding: 0;
}
.row {
width: 100%;
display: flex;
flex-direction: row;
margin: 0;
height: 100%;
}
#sidebarPane {
flex: 0 0 20%;
min-width: 150px;
max-width: 40%;
padding: 0;
}
#editorPane {
flex: 1 1 40%;
min-width: 250px;
max-width: 70%;
padding: 0;
}
#previewPane {
flex: 1 1 40%;
min-width: 250px;
max-width: 70%;
padding: 0;
}
/* Sidebar - improved */
.sidebar {
background-color: var(--bg-secondary);
border-right: 1px solid var(--border-color);
overflow-y: auto;
overflow-x: hidden;
height: 100%;
transition: background-color 0.3s ease;
display: flex;
flex-direction: column;
}
.sidebar h6 {
margin: 12px 8px 6px;
font-size: 11px;
font-weight: 600;
color: var(--text-secondary);
text-transform: uppercase;
letter-spacing: 0.5px;
}
#fileTree {
flex: 1;
overflow-y: auto;
overflow-x: hidden;
padding: 4px 0;
}
/* Navbar */
.navbar {
background-color: var(--bg-secondary);
border-bottom: 1px solid var(--border-color);
transition: background-color 0.3s ease;
}
.navbar-brand {
color: var(--text-primary) !important;
font-weight: 600;
}
/* Scrollbar styling */
::-webkit-scrollbar {
width: 10px;
height: 10px;
}
::-webkit-scrollbar-track {
background: var(--bg-secondary);
}
::-webkit-scrollbar-thumb {
background: var(--border-color);
border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
background: var(--text-secondary);
}
/* Preview Pane Styling */
#previewPane {
flex: 1 1 40%;
min-width: 250px;
max-width: 70%;
padding: 0;
overflow-y: auto;
overflow-x: hidden;
background-color: var(--bg-primary);
border-left: 1px solid var(--border-color);
}
#preview {
padding: 20px;
min-height: 100%;
overflow-wrap: break-word;
word-wrap: break-word;
}
#preview > p:first-child {
margin-top: 0;
}
#preview > h1:first-child,
#preview > h2:first-child {
margin-top: 0;
}