:root {
    /* Gruvbox Dark Colors */
    --bg-dark: #282828;
    --fg: #ebdbb2;
    --red: #cc241d;
    --green: #98971a;
    --yellow: #d79921;
    --blue: #458588;
    --purple: #b16286;
    --aqua: #689d6a;
    --gray: #a89984;
    --font: 'Hack', monospace;
}

body {
    background-color: var(--bg-dark);
    color: var(--fg);
    font-family: var(--font);
    line-height: 1.6;
    margin: 0;
    padding: 2rem;
}

pre {
    font-family: var(--font);
    white-space: pre;
    overflow-x: auto;
    background: var(--bg-dark);
    padding: 1rem;
}

a {
    color: var(--blue);
    text-decoration: none;
}

a:hover {
    color: var(--aqua);
}

h1, h2 {
    color: var(--yellow);
}

h3, h4, h5 {
    color: var(--gray);
}

.terminal {
    margin: 0 auto;
    padding: 2rem;
    border: 1px solid var(--gray);
}

.cursor::after {
    content: "█";
    animation: cursor 1s infinite;
}

.terminal-nav {
    padding: 1rem;
    border-bottom: 1px solid var(--gray);
    margin-bottom: 2rem;
}

.name {
    color: var(--fg);
    margin-right: 0.5rem;
}

.nav-item {
    color: var(--aqua);
    text-decoration: none;
    padding: 0.2rem 0.5rem;
}

.nav-item:hover {
    background: var(--gray);
    color: var(--bg-dark);
}

.separator {
    color: var(--gray);
    margin: 0 0.5rem;
}

.graph-mobile, .graph-tablet, .graph-desktop {
    display: none;
}

/* Mobile screens */
@media (max-width: 767px) {
    .graph-mobile {
        display: block;
    }
}

/* Tablet screens */
@media (min-width: 768px) and (max-width: 1023px) {
    .graph-tablet {
        display: block;
    }
}

/* Desktop screens */
@media (min-width: 1024px) {
    .graph-desktop {
        display: block;
    }
}

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