diff options
| author | Sivaldo <git@sivaldodavi.com> | 2026-06-29 18:36:52 -0300 |
|---|---|---|
| committer | Sivaldo <git@sivaldodavi.com> | 2026-06-29 18:36:52 -0300 |
| commit | dd7670cf72b27c1b330d3732a483ca22e3a3db18 (patch) | |
| tree | 16d4e458d93cd7181d4ebc950ed406b45038f53b /static/index.css | |
Commit inicial
Diffstat (limited to 'static/index.css')
| -rw-r--r-- | static/index.css | 255 |
1 files changed, 255 insertions, 0 deletions
diff --git a/static/index.css b/static/index.css new file mode 100644 index 0000000..8245d0d --- /dev/null +++ b/static/index.css @@ -0,0 +1,255 @@ +:root { + --bg: #121212; + --fg: #eeeeee; + --fg-dim: #aaaaaa; + --dim: #777; + --muted: #444; + --border: #222; + --border2: #2a2a2a; + --link: #599cab; + --good: #5a9c6f; + --reading: #b8943f; + --stopped: #a3615a; + + --serif: "Georgia", serif; + --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; +} + +* { box-sizing: border-box; margin: 0; } + +a { color: var(--link); text-decoration: none; } +a:hover { text-decoration: underline; } + +body { + background: var(--bg); + color: var(--fg); + font-family: var(--serif); + font-size: 1.05rem; + max-width: 900px; + margin: 0 auto; + padding: 40px 20px 80px; + line-height: 1.7; +} + +hr { border: none; border-top: 1px solid var(--border); margin: 0 0 40px; } + +/* ---------- Navbar ---------- */ +.nav-container { + display: flex; + margin-bottom: 60px; + min-height: 30px; + flex-wrap: wrap; + gap: 12px; +} +.home-nav { justify-content: flex-start; gap: 28px; } +.post-nav { justify-content: space-between; align-items: baseline; } +.post-nav .post-nav-links { display: flex; gap: 22px; flex-wrap: wrap; } + +.nav-container a { + color: var(--dim); + font-family: var(--sans); + font-size: 0.9rem; + font-weight: 500; +} +.nav-container a:hover { color: var(--fg); text-decoration: none; } + +.centered-post-title a { + font-family: var(--sans); + color: var(--fg); + font-weight: 600; + font-size: 1rem; + letter-spacing: 0.02em; +} + +/* ---------- Home: hero ---------- */ +.hero { display: flex; align-items: flex-start; gap: 60px; margin-bottom: 80px; } +.hero-text { flex: 1; } +.hero-text h1 { + font-size: 2.4rem; + font-weight: normal; + letter-spacing: -0.5px; + margin-bottom: 20px; + color: #fff; + line-height: 1.2; +} +.hero-text p { color: var(--fg-dim); font-size: 1rem; line-height: 1.8; max-width: 540px; } +.hero-text p + p { margin-top: 14px; } +.hero-photo { flex-shrink: 0; width: 130px; } +.hero-photo img { + width: 130px; height: 130px; + border-radius: 50%; + object-fit: cover; + filter: grayscale(20%); + border: 1px solid var(--border); +} + +/* ---------- Home: grid sections ---------- */ +.grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px 80px; } + +section h2 { + font-family: var(--sans); + font-size: 0.72rem; + font-weight: 600; + text-transform: uppercase; + letter-spacing: 1.4px; + color: var(--dim); + border-bottom: 1px solid var(--border); + padding-bottom: 8px; + margin-bottom: 22px; +} + +.posts { list-style: none; padding: 0; } +.posts li { margin-bottom: 20px; } +.posts a { display: block; color: var(--fg); font-size: 0.98rem; line-height: 1.4; } +.posts a:hover { color: var(--link); text-decoration: none; } +.post-excerpt { font-size: 0.88rem; color: var(--dim); margin-top: 2px; font-style: italic; } +.post-meta { font-family: var(--sans); font-size: 0.78rem; color: var(--dim); margin-top: 3px; } + +.books { list-style: none; padding: 0; } +.books li { display: flex; gap: 14px; margin-bottom: 18px; align-items: flex-start; } +.book-capa { flex-shrink: 0; width: 36px; height: 52px; border-radius: 2px; overflow: hidden; border: 1px solid var(--border); background: #1a1a1a; } +.book-capa img { width: 100%; height: 100%; object-fit: cover; display: block; } +.book-info { padding-top: 1px; } +.book-title { display: block; color: var(--fg); font-size: 0.97rem; } +.book-title:hover { color: var(--link); text-decoration: none; } +.book-author { font-family: var(--sans); font-size: 0.8rem; color: var(--dim); } + +.linklist { list-style: none; padding: 0; } +.linklist li { margin-bottom: 13px; } +.linklist a { color: var(--fg-dim); font-size: 0.97rem; } +.linklist a:hover { color: var(--link); text-decoration: none; } + +.ver-todos { display: inline-block; font-family: var(--sans); font-size: 0.8rem; color: var(--muted); margin-top: 14px; } +.ver-todos:hover { color: var(--link); text-decoration: none; } + +.tag, .post-tag { + display: inline-block; + font-family: var(--sans); + font-size: 0.68rem; + color: var(--dim); + border: 1px solid var(--muted); + padding: 1px 6px; + border-radius: 2px; + vertical-align: middle; + margin-left: 5px; + text-decoration: none; + transition: color 0.15s, border-color 0.15s; +} +.tag:hover, .post-tag:hover { color: var(--fg); border-color: var(--dim); text-decoration: none; } +.post-tags-bar { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 14px; } + +/* ---------- Posts / generic single & list pages ---------- */ +.post-body { font-size: 1.05rem; max-width: 750px; margin: 0 auto; } +.post-header { margin-bottom: 32px; padding-bottom: 18px; border-bottom: 1px solid var(--border); } +.post-header h1 { font-size: 1.9rem; font-weight: normal; color: #eee; margin: 0 0 8px; line-height: 1.3; } +.post-header .post-excerpt-lead { color: #888; font-style: italic; font-size: 1rem; margin: 0 0 10px; } +.post-header .post-date { color: var(--dim); font-size: 0.85rem; margin: 0; } + +.content h2 { margin-top: 2em; color: #fff; } +.content hr { border: 0; border-top: 1px solid var(--border); margin: 40px 0; } + +.content p { margin: 0 0 1.2em; } +.content ul, .content ol { margin: 0 0 1.2em; padding-left: 1.4em; } +.content li { margin-bottom: 0.4em; } +.content h1, .content h2, .content h3, .content h4 { margin: 1.6em 0 0.7em; line-height: 1.3; } +.content h1:first-child, .content h2:first-child, .content h3:first-child { margin-top: 0; } +.content blockquote { margin: 1.4em 0; padding-left: 18px; border-left: 2px solid var(--border); color: #aaa; font-style: italic; } +.content table { margin: 1.4em 0; border-collapse: collapse; width: 100%; } +.content th, .content td { border: 1px solid var(--border); padding: 8px 12px; text-align: left; font-size: 0.92rem; } +.content th { color: #ccc; } +.content img { max-width: 100%; margin: 1.4em 0; border-radius: 3px; } +.content code { background: #1a1a1a; padding: 2px 5px; border-radius: 3px; font-size: 0.9em; } +.content pre { background: #1a1a1a; padding: 14px 16px; border-radius: 4px; overflow-x: auto; margin: 1.4em 0; } +.content pre code { background: none; padding: 0; } +.content sup { line-height: 0; } + +.back-link { display: inline-block; font-family: var(--sans); font-size: 0.85rem; color: var(--dim); margin-bottom: 40px; } +.back-link:hover { color: var(--fg); text-decoration: none; } + +.page-title { font-size: 1.9rem; font-weight: normal; color: #eee; margin-bottom: 10px; } +.page-intro { font-family: var(--sans); font-size: 0.9rem; color: var(--dim); margin-bottom: 30px; max-width: 540px; } + +.recent-posts { list-style: none; padding: 0; } +.recent-posts li { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 15px; gap: 12px; flex-wrap: wrap; } +.recent-posts .recent-post-left { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; } +.recent-posts .recent-post-date { color: var(--dim); font-size: 0.85rem; white-space: nowrap; flex-shrink: 0; } + +/* ---------- Leituras: índice por categoria ---------- */ +.indice { display: flex; flex-wrap: wrap; gap: 8px 16px; font-family: var(--sans); font-size: 0.82rem; margin-bottom: 50px; padding-bottom: 24px; border-bottom: 1px solid var(--border); } +.indice a { color: var(--dim); } +.indice a:hover { color: var(--link); text-decoration: none; } +.categoria { margin-bottom: 52px; } +.categoria:last-child { margin-bottom: 0; } +.categoria h2 { margin-bottom: 20px; } +.subcategoria { margin-bottom: 26px; } +.subcategoria:last-child { margin-bottom: 0; } +.subcategoria h3 { font-family: var(--sans); font-size: 0.78rem; font-weight: 500; color: #888; margin-bottom: 12px; } + +.livro { display: flex; gap: 18px; padding: 10px 0; border-bottom: 1px solid var(--border); align-items: center; } +.livro:last-child { border-bottom: none; } +.livro-capa { flex-shrink: 0; width: 50px; height: 74px; border-radius: 2px; overflow: hidden; border: 1px solid var(--border); background: #1a1a1a; } +.livro-capa img { width: 100%; height: 100%; object-fit: cover; display: block; } +.livro-capa.sem-capa { display: flex; align-items: center; justify-content: center; font-family: var(--sans); font-size: 0.6rem; color: var(--muted); text-align: center; } +.livro-info { flex: 1; min-width: 0; } +.livro-titulo { display: inline; font-size: 0.98rem; color: var(--fg); } +.livro-titulo:hover { color: var(--link); text-decoration: none; } +.livro-status { + display: inline-block; + flex-shrink: 0; + margin-left: auto; + font-family: var(--sans); + font-size: 0.66rem; + padding: 1px 6px; + border: 1px solid currentColor; + border-radius: 2px; +} +.livro-status-lendo { color: var(--reading); } +.livro-status-parei-de-ler { color: var(--stopped); } +.livro-autor { display: block; font-family: var(--sans); font-size: 0.8rem; color: var(--dim); margin-top: 2px; } + +/* ---------- Leituras: página individual do livro ---------- */ +.livro-header { display: flex; gap: 28px; margin-bottom: 44px; align-items: flex-start; } +.livro-capa-grande { flex-shrink: 0; width: 120px; height: 176px; border-radius: 2px; overflow: hidden; border: 1px solid var(--border); } +.livro-capa-grande img { width: 100%; height: 100%; object-fit: cover; display: block; } +.livro-capa-grande.sem-capa { display: flex; align-items: center; justify-content: center; font-family: var(--sans); font-size: 0.65rem; color: var(--muted); text-align: center; background: #1a1a1a; } +.livro-header-info { padding-top: 4px; } +.livro-header-info h1 { font-size: 1.6rem; font-weight: normal; color: #eee; margin-bottom: 6px; line-height: 1.3; } +.livro-header-info .autor { font-family: var(--sans); font-size: 0.9rem; color: var(--dim); } +.livro-header-info .meta { font-family: var(--sans); font-size: 0.78rem; color: var(--muted); margin-top: 14px; display: flex; gap: 10px; flex-wrap: wrap; align-items: center; } +.status { font-size: 0.74rem; color: var(--good); } +.status-lendo { color: var(--reading); } +.status-parei-de-ler { color: var(--stopped); } +.link-externo { display: inline-block; margin-top: 16px; font-family: var(--sans); font-size: 0.8rem; color: var(--dim); border: 1px solid var(--border); padding: 5px 12px; border-radius: 2px; } +.link-externo:hover { color: var(--fg); border-color: var(--dim); text-decoration: none; } + +.resenha p { color: #bbb; margin-bottom: 18px; } +.resenha p:last-child { margin-bottom: 0; } +.resenha blockquote { margin-top: 36px; padding: 16px 20px; border-left: 2px solid var(--border); font-size: 0.95rem; color: #999; font-style: italic; } +.resenha .sem-resenha { color: var(--muted); font-style: italic; } + +/* ---------- Footer ---------- */ +footer { + margin-top: 100px; + padding-top: 24px; + border-top: 1px solid var(--border); + display: flex; + justify-content: space-between; + color: var(--dim); + font-family: var(--sans); + font-size: 0.8rem; + flex-wrap: wrap; + gap: 8px; +} +footer a { color: var(--dim); } +footer a:hover { color: var(--fg); } + +@media (max-width: 650px) { + .grid { grid-template-columns: 1fr; gap: 50px; } + .hero { flex-direction: column-reverse; gap: 30px; } + .hero-photo { width: 90px; } + .hero-photo img { width: 90px; height: 90px; } + .hero-text h1 { font-size: 1.8rem; } + .livro-header { flex-direction: column; } + .livro-capa-grande { width: 100px; height: 148px; } + .livro-capa { width: 40px; height: 60px; } +} |
