* {
    box-sizing: border-box;
}

body {
    background: #050505;
    color: #e0e0e0;
    font-family: monospace;
    margin: 20px;
    line-height: 1.6;
}

.container {
    max-width: 1200px;
    margin: auto;
}

.box {
    border: 1px solid #2f8f2f;
    padding: 15px;
    margin-bottom: 20px;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.logo {
    font-size: 15px;
    line-height: 1.1;
    color: #7CFF7C;
}

.menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.menu a {
    color: #7CFF7C;
    text-decoration: none;
}

.menu a:hover {
    text-decoration: underline;
}

.hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.prompt {
    color: #00ff88;
    margin-top: 20px;
}

.content {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 20px;
}

.section-title {
    margin-bottom: 10px;
    color: #00ff88;
    font-weight: bold;
}

.article-list div,
.categories div {
    margin-bottom: 8px;
}

.article-list a,
.categories a,
.sidebar a,
a {
    color: #7CFF7C;
    text-decoration: none;
}

.article-list a:hover,
.categories a:hover,
.sidebar a:hover,
a:hover {
    text-decoration: underline;
}

.tag {
    color: #ffcc66;
    text-decoration: none;
}

.tag:hover {
    text-decoration: none;
}

.categories a:hover {
    text-decoration: underline;
    text-decoration-color: #ffcc66;
}

.footer {
    text-align: center;
    color: #4f9f4f;
    margin-top: 0px;
}

hr {
    border: none;
    border-top: 1px dashed #2f8f2f;
    margin: 10px 0 20px;
}

input[type="text"] {
    width: 80%;
    background: #000;
    border: 1px solid #2f8f2f;
    color: #7CFF7C;
    padding: 5px;
    font-family: monospace;
}

input[type="submit"] {
    background: #000;
    border: 1px solid #2f8f2f;
    color: #7CFF7C;
    padding: 5px 10px;
    font-family: monospace;
    cursor: pointer;
    margin-top: 10px;
}

.notice {
    color: #aaaaaa;
    font-size: 13px;
    margin-top: 10px;
}

h1, h2, h3,
strong,
.green {
    color: #7CFF7C;
}

.cursor {
    display: inline-block;
    color: #00ff88;
    animation: blink 1.4s step-start infinite;
}

h1 {
    color: #00ff88;
    font-size: 22px;
    margin-bottom: 10px;
}

pre.command {
    background: #020202;
    border: 1px solid #2f8f2f;
    padding: 12px;
    color: #00ff88;

    font-family: "Courier New", monospace;
    font-size: 14px;
    line-height: 1.5;

    overflow-x: auto;
    white-space: pre-wrap;
    overflow-wrap: anywhere;

    margin-top: 10px;
    margin-bottom: 25px;
}

@keyframes blink {
    50% {
        opacity: 0;
    }
}

@media (max-width: 900px) {

    .hero,
    .content {
        grid-template-columns: 1fr;
    }

    .menu {
        margin-top: 15px;
        text-align: left;
    }

    .logo {
        font-size: 12px;
    }
}
