/* ===== Terminalfönster, används av index- och övningssidorna ===== */

/* Terminalfönstret */
.terminal {
    max-width: 700px;
    margin: 0 auto;
    padding: 0 20px 20px;
    border: 1px solid var(--fg);
    line-height: 1.5;
}

/* Fönstrets titelrad, med titeln i mitten och fönsterknappar till höger.
   Tre kolumner där de yttre är lika breda, så titeln hamnar i mitten */
.titlebar {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: 2ch;
    margin: 0 -20px 15px;
    padding: 4px 20px;
    border-bottom: 1px solid var(--fg);
    color: var(--link);
    text-align: center;
}

.titlebar::before {
    content: "";
}

/* Bara dekoration. Den andra content-raden (med / "") gör att skärmläsare
   hoppar över knapparna, den första är reserv för äldre webbläsare */
.titlebar::after {
    content: "[_] [□] [x]";
    content: "[_] [□] [x]" / "";
    justify-self: end;
    white-space: nowrap;
}

.terminal p {
    margin: 4px 0;
}

.prompt {
    color: var(--link);
}

.output {
    padding-left: 2ch;
}

/* Text som skrivs ut tecken för tecken (js/terminal.js).
   Allt efter den döljs tills den är klar, som när ett kommando körs */
.skriver::after {
    content: "█";
}

.skriver ~ * {
    visibility: hidden;
}

/* Kataloglistningen från "ls -l" */
.listing {
    list-style: none;
    margin: 4px 0 12px;
    padding-left: 2ch;
}

.perm {
    color: var(--link);
    margin-right: 2ch;
}

.listing a::before {
    content: "> ";
    opacity: 0;
}

.listing a:hover::before,
.listing a:focus-visible::before {
    opacity: 1;
}

/* Blinkande markör, @keyframes blink finns i style.css */
.cursor {
    animation: blink 1s steps(1) infinite;
}
