Make the webpage a single file for easier offline viewing

This commit is contained in:
Phixxy 2025-08-02 13:30:12 -07:00
parent d671780d7e
commit aa3ea6bfd3
2 changed files with 190 additions and 180 deletions

View file

@ -16,7 +16,188 @@
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ghost.moe — A minimalist guide to digital privacy, security, and anti-censorship.</title>
<link rel="stylesheet" href="styles.css" />
<style>
.sidebar {
position: fixed;
top: 0;
left: 0;
width: 200px;
height: 100%;
background-color: #111;
padding: 2rem 1rem;
overflow-y: auto;
}
.sidebar ul {
list-style: none;
}
.sidebar li {
margin-bottom: 1rem;
}
.sidebar a {
color: #ccc;
text-decoration: none;
font-weight: bold;
transition: color 0.2s ease;
}
.sidebar a:hover {
color: #fff;
}
.sidebar strong {
display: block;
color: #fff;
font-size: 0.95rem;
margin-top: 1.5rem;
margin-bottom: 0.5rem;
padding-bottom: 0.2rem;
border-bottom: 1px solid #333;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.sidebar ul ul {
padding-left: 1rem;
}
.sidebar ul ul li {
margin-bottom: 0.5rem;
}
.sidebar ul ul a {
font-weight: normal;
color: #aaa;
font-size: 0.9rem;
}
.sidebar ul ul a:hover {
color: #fff;
}
main {
margin-left: 110px;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: sans-serif;
background: #0a0a0a;
color: #eee;
line-height: 1.6;
padding: 2rem;
max-width: 800px;
margin: auto;
}
header {
text-align: center;
margin-bottom: 2rem;
border-bottom: 1px solid #ddd;
}
h1 {
font-size: 2.5rem;
margin-bottom: 0.5rem;
}
.tagline {
margin-bottom: 2rem;
font-size: 1.2rem;
color: #eee;
}
section {
margin-bottom: 3rem;
}
.section p {
color: #eee;
font-size: 1rem;
line-height: 1.6;
margin-bottom: 1.5rem;
padding: 0 1rem;
max-width: 700px;
margin-left: auto;
margin-right: auto;
}
.section a {
color: #fb2;
}
.section h2 {
font-size: 1.6rem;
margin-bottom: 1rem;
}
.levels {
display: grid;
grid-template-columns: 1fr;
gap: 1rem;
}
.level {
background: black;
border-left: 5px solid #ccc;
padding: 1rem;
border-radius: 6px;
}
.level h3 {
margin-bottom: 0.5rem;
}
.level.easy {
border-color: #2ecc71;
}
.level.medium {
border-color: #f1c40f;
}
.level.hard {
border-color: #e74c3c;
}
footer {
text-align: center;
font-size: 0.9rem;
color: #eee;
padding-top: 2rem;
border-top: 1px solid #ddd;
}
.footer a {
color: #fb2;
}
.explain {
display: block;
font-size: 0.85rem;
color: #aaa;
margin-top: 0.25rem;
}
/* Hide sidebar on mobile */
@media (max-width: 768px) {
.sidebar {
display: none;
}
body {
padding-left: 1rem;
padding-right: 1rem;
}
main {
margin-left: 0;
}
}
</style>
</head>
<body>
<nav class="sidebar">
@ -26,6 +207,11 @@
Intro
</a>
</li>
<li>
<a href="#threats">
Threat Modeling
</a>
</li>
<li>
<strong>
Privacy
@ -99,7 +285,7 @@
</section>
<section id="threats" class="section">
<h2>
Threat Modeling
🕵️‍♂️ Threat Modeling
</h2>
<p>
The most important thing to consider when you are worried about privacy
@ -441,9 +627,9 @@
</div>
</div>
</section>
<footer>
<footer class="footer">
<p>
Built with minimalism in mind. No tracking, no nonsense. ❤️
<a href="https://github.com/phixxy/ghost.moe">Built with minimalism in mind</a>. No tracking, no nonsense. ❤️
</p>
</footer>
</main>

View file

@ -1,176 +0,0 @@
/* styles.css */
.sidebar {
position: fixed;
top: 0;
left: 0;
width: 200px;
height: 100%;
background-color: #111;
padding: 2rem 1rem;
overflow-y: auto;
}
.sidebar ul {
list-style: none;
}
.sidebar li {
margin-bottom: 1rem;
}
.sidebar a {
color: #ccc;
text-decoration: none;
font-weight: bold;
transition: color 0.2s ease;
}
.sidebar a:hover {
color: #fff;
}
.sidebar strong {
display: block;
color: #fff;
font-size: 0.95rem;
margin-top: 1.5rem;
margin-bottom: 0.5rem;
padding-bottom: 0.2rem;
border-bottom: 1px solid #333;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.sidebar ul ul {
padding-left: 1rem;
}
.sidebar ul ul li {
margin-bottom: 0.5rem;
}
.sidebar ul ul a {
font-weight: normal;
color: #aaa;
font-size: 0.9rem;
}
.sidebar ul ul a:hover {
color: #fff;
}
main {
margin-left: 110px;
}
* {
box-sizing: border-box;
margin: 0;
padding: 0;
}
body {
font-family: sans-serif;
background: #0a0a0a;
color: #eee;
line-height: 1.6;
padding: 2rem;
max-width: 800px;
margin: auto;
}
header {
text-align: center;
margin-bottom: 2rem;
}
h1 {
font-size: 2.5rem;
margin-bottom: 0.5rem;
}
.tagline {
font-size: 1.2rem;
color: #eee;
}
section {
margin-bottom: 3rem;
}
.section p {
color: #eee;
font-size: 1rem;
line-height: 1.6;
margin-bottom: 1.5rem;
padding: 0 1rem;
max-width: 700px;
margin-left: auto;
margin-right: auto;
}
.section a {
color: #fb2;
}
.section h2 {
font-size: 1.6rem;
margin-bottom: 1rem;
}
.levels {
display: grid;
grid-template-columns: 1fr;
gap: 1rem;
}
.level {
background: black;
border-left: 5px solid #ccc;
padding: 1rem;
border-radius: 6px;
}
.level h3 {
margin-bottom: 0.5rem;
}
.level.easy {
border-color: #2ecc71;
}
.level.medium {
border-color: #f1c40f;
}
.level.hard {
border-color: #e74c3c;
}
footer {
text-align: center;
font-size: 0.9rem;
color: #eee;
padding-top: 2rem;
border-top: 1px solid #ddd;
}
.explain {
display: block;
font-size: 0.85rem;
color: #aaa;
margin-top: 0.25rem;
}
/* Hide sidebar on mobile */
@media (max-width: 768px) {
.sidebar {
display: none;
}
body {
padding-left: 1rem;
padding-right: 1rem;
}
main {
margin-left: 0;
}
}