435 lines
7.8 KiB
CSS
435 lines
7.8 KiB
CSS
:root {
|
|
--warm-bg: #f5f0e8;
|
|
--warm-primary: #c4623a;
|
|
--warm-text: #3d3530;
|
|
--warm-gray: #6b6560;
|
|
--warm-accent: #d4a853;
|
|
--warm-white: #fffdf9;
|
|
}
|
|
|
|
body {
|
|
background-color: var(--warm-bg);
|
|
color: var(--warm-text);
|
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
font-size: 1rem;
|
|
min-height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
/* Header */
|
|
.site-header {
|
|
background-color: var(--warm-primary);
|
|
padding: 0.5rem 0;
|
|
}
|
|
|
|
.site-header .navbar-brand {
|
|
color: var(--warm-white);
|
|
font-weight: 600;
|
|
}
|
|
|
|
.site-header .nav-link {
|
|
color: rgba(255, 255, 255, 0.85);
|
|
padding: 0.5rem 1rem;
|
|
transition: color 0.2s;
|
|
}
|
|
|
|
.site-header .nav-link:hover,
|
|
.site-header .nav-link.active {
|
|
color: var(--warm-white);
|
|
background-color: rgba(255, 255, 255, 0.1);
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.navbar-toggler {
|
|
border-color: rgba(255, 255, 255, 0.5);
|
|
}
|
|
|
|
.navbar-toggler-icon {
|
|
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
|
|
}
|
|
|
|
.search-form input {
|
|
background-color: rgba(255, 255, 255, 0.9);
|
|
border: none;
|
|
}
|
|
|
|
.search-form input:focus {
|
|
background-color: #fff;
|
|
box-shadow: 0 0 0 2px var(--warm-accent);
|
|
}
|
|
|
|
/* Search Results */
|
|
.search-results {
|
|
position: absolute;
|
|
top: 100%;
|
|
right: 0;
|
|
left: 0;
|
|
background: var(--warm-white);
|
|
border-top: 1px solid var(--warm-gray);
|
|
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
|
|
z-index: 1000;
|
|
max-height: 400px;
|
|
overflow-y: auto;
|
|
}
|
|
|
|
.search-results-content {
|
|
padding: 1rem;
|
|
max-width: 600px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
.search-results ul {
|
|
list-style: none;
|
|
padding: 0;
|
|
margin: 0;
|
|
}
|
|
|
|
.search-results li {
|
|
padding: 0.5rem 0;
|
|
border-bottom: 1px solid var(--warm-bg);
|
|
}
|
|
|
|
.search-results li:last-child {
|
|
border-bottom: none;
|
|
}
|
|
|
|
.search-results a {
|
|
color: var(--warm-text);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.search-results a:hover {
|
|
color: var(--warm-primary);
|
|
}
|
|
|
|
/* Sidebar */
|
|
.sidebar {
|
|
background-color: var(--warm-white);
|
|
border-right: 1px solid #e0d8cc;
|
|
min-height: calc(100vh - 60px);
|
|
padding: 1.5rem 1rem;
|
|
}
|
|
|
|
.sidebar-content h6 {
|
|
color: var(--warm-primary);
|
|
font-weight: 600;
|
|
margin-bottom: 0.75rem;
|
|
font-size: 0.875rem;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.5px;
|
|
}
|
|
|
|
.sidebar-content .nav-link {
|
|
color: var(--warm-text);
|
|
padding: 0.375rem 0.75rem;
|
|
border-radius: 4px;
|
|
font-size: 0.9rem;
|
|
}
|
|
|
|
.sidebar-content .nav-link:hover {
|
|
background-color: var(--warm-bg);
|
|
}
|
|
|
|
/* Main Content */
|
|
.main-content {
|
|
padding: 2rem;
|
|
flex: 1;
|
|
}
|
|
|
|
/* Cards */
|
|
.card {
|
|
background-color: var(--warm-white);
|
|
border: 1px solid #e0d8cc;
|
|
border-radius: 8px;
|
|
transition: box-shadow 0.2s;
|
|
}
|
|
|
|
.card:hover {
|
|
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
|
|
}
|
|
|
|
.card-title a {
|
|
color: var(--warm-text);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.card-title a:hover {
|
|
color: var(--warm-primary);
|
|
}
|
|
|
|
/* Plan Cards */
|
|
.plan-card {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.plan-card .status-badge {
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.plan-card.planned {
|
|
border-left: 4px solid var(--warm-accent);
|
|
}
|
|
|
|
.plan-card.in-progress {
|
|
border-left: 4px solid #e67e22;
|
|
}
|
|
|
|
.plan-card.done {
|
|
border-left: 4px solid #27ae60;
|
|
opacity: 0.8;
|
|
}
|
|
|
|
.plan-card.cancelled {
|
|
border-left: 4px solid #e74c3c;
|
|
opacity: 0.6;
|
|
}
|
|
|
|
/* Diary Timeline */
|
|
.diary-timeline {
|
|
position: relative;
|
|
padding-left: 2rem;
|
|
}
|
|
|
|
.diary-timeline::before {
|
|
content: '';
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
width: 2px;
|
|
background-color: var(--warm-primary);
|
|
}
|
|
|
|
.diary-entry {
|
|
position: relative;
|
|
margin-bottom: 2rem;
|
|
padding-bottom: 1.5rem;
|
|
border-bottom: 1px solid #e0d8cc;
|
|
}
|
|
|
|
.diary-entry:last-child {
|
|
border-bottom: none;
|
|
}
|
|
|
|
.diary-entry::before {
|
|
content: '';
|
|
position: absolute;
|
|
left: -2rem;
|
|
top: 0.5rem;
|
|
width: 12px;
|
|
height: 12px;
|
|
background-color: var(--warm-primary);
|
|
border-radius: 50%;
|
|
transform: translateX(-5px);
|
|
}
|
|
|
|
.diary-entry .time {
|
|
color: var(--warm-gray);
|
|
font-size: 0.875rem;
|
|
}
|
|
|
|
.diary-date {
|
|
color: var(--warm-primary);
|
|
font-weight: 600;
|
|
}
|
|
|
|
/* Credentials */
|
|
.creds-card {
|
|
position: relative;
|
|
}
|
|
|
|
.creds-card .encrypted-data {
|
|
font-family: monospace;
|
|
background: var(--warm-bg);
|
|
padding: 1rem;
|
|
border-radius: 4px;
|
|
word-break: break-all;
|
|
font-size: 0.75rem;
|
|
}
|
|
|
|
.creds-card .decrypted-fields {
|
|
background: var(--warm-bg);
|
|
padding: 1rem;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.creds-card .field-row {
|
|
display: flex;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
|
|
.creds-card .field-label {
|
|
font-weight: 600;
|
|
min-width: 100px;
|
|
color: var(--warm-gray);
|
|
}
|
|
|
|
.creds-card .field-value {
|
|
flex: 1;
|
|
font-family: monospace;
|
|
}
|
|
|
|
/* Source path */
|
|
.source-path {
|
|
background-color: var(--warm-bg);
|
|
border: 1px solid #e0d8cc;
|
|
border-radius: 4px;
|
|
padding: 0.4rem 0.75rem;
|
|
display: inline-block;
|
|
}
|
|
.source-path code {
|
|
font-size: 0.82em;
|
|
color: var(--warm-gray);
|
|
}
|
|
.source-path .btn-outline-secondary {
|
|
font-size: 0.75rem;
|
|
border-color: #d0c8bc;
|
|
}
|
|
.source-path .btn-outline-secondary:hover {
|
|
background-color: var(--warm-primary);
|
|
border-color: var(--warm-primary);
|
|
}
|
|
|
|
/* Article styles */
|
|
.article-content {
|
|
background-color: var(--warm-white);
|
|
padding: 2rem;
|
|
border-radius: 8px;
|
|
border: 1px solid #e0d8cc;
|
|
}
|
|
|
|
.article-content h1,
|
|
.article-content h2,
|
|
.article-content h3 {
|
|
color: var(--warm-text);
|
|
margin-top: 1.5rem;
|
|
}
|
|
|
|
.article-content h1 {
|
|
margin-top: 0;
|
|
padding-bottom: 0.5rem;
|
|
border-bottom: 2px solid var(--warm-primary);
|
|
}
|
|
|
|
.article-content table {
|
|
width: 100%;
|
|
margin-bottom: 1rem;
|
|
background: var(--warm-white);
|
|
}
|
|
|
|
.article-content th {
|
|
background-color: var(--warm-primary);
|
|
color: white;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.article-content th,
|
|
.article-content td {
|
|
padding: 0.75rem;
|
|
border: 1px solid #e0d8cc;
|
|
}
|
|
|
|
.article-content code {
|
|
background-color: var(--warm-bg);
|
|
padding: 0.2rem 0.4rem;
|
|
border-radius: 3px;
|
|
font-size: 0.9em;
|
|
}
|
|
|
|
.article-content pre {
|
|
background-color: var(--warm-text);
|
|
color: var(--warm-bg);
|
|
padding: 1rem;
|
|
border-radius: 4px;
|
|
overflow-x: auto;
|
|
}
|
|
|
|
.article-content pre code {
|
|
background: none;
|
|
padding: 0;
|
|
}
|
|
|
|
.article-content a {
|
|
color: var(--warm-primary);
|
|
}
|
|
|
|
.article-content a:hover {
|
|
color: var(--warm-accent);
|
|
}
|
|
|
|
/* Tags */
|
|
.tags {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.5rem;
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
.tag {
|
|
background-color: var(--warm-bg);
|
|
color: var(--warm-gray);
|
|
padding: 0.25rem 0.75rem;
|
|
border-radius: 20px;
|
|
font-size: 0.8rem;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.tag:hover {
|
|
background-color: var(--warm-primary);
|
|
color: white;
|
|
}
|
|
|
|
/* Footer */
|
|
.site-footer {
|
|
background-color: var(--warm-text);
|
|
color: var(--warm-bg);
|
|
padding: 1rem 0;
|
|
margin-top: auto;
|
|
}
|
|
|
|
/* Responsive */
|
|
@media (max-width: 767.98px) {
|
|
.sidebar {
|
|
position: fixed;
|
|
top: 60px;
|
|
left: 0;
|
|
bottom: 0;
|
|
z-index: 1000;
|
|
width: 280px;
|
|
transform: translateX(-100%);
|
|
transition: transform 0.3s;
|
|
}
|
|
|
|
.sidebar.show {
|
|
transform: translateX(0);
|
|
}
|
|
|
|
.main-content {
|
|
width: 100%;
|
|
padding: 1rem;
|
|
}
|
|
|
|
.search-form {
|
|
width: 100%;
|
|
margin-top: 0.5rem;
|
|
}
|
|
}
|
|
|
|
/* Context Quote */
|
|
.context-quote {
|
|
background-color: var(--warm-bg);
|
|
border-left: 4px solid var(--warm-accent);
|
|
padding: 1rem;
|
|
margin-top: 1rem;
|
|
font-style: italic;
|
|
}
|
|
|
|
.context-quote cite {
|
|
display: block;
|
|
text-align: right;
|
|
margin-top: 0.5rem;
|
|
font-style: normal;
|
|
color: var(--warm-gray);
|
|
}
|