:root {
    --message-background: linear-gradient(0deg, #2e2d31, #252425);
    --message-background-alt: linear-gradient(0deg, #3a393e, #282628);
    --message-color: #f0f0f0;
    --message-shadow-color: #1d1d1d;
}

* {
    padding: 0;
    margin: 0;
}

body {
    font-family: Arial, Helvetica, sans-serif;
}

form div {
    display: block;
}

.center {
    width: 35em;
    margin: 0 auto;
}

.center>* {
    margin-bottom: 16px;
}

.messages {
    display: flex;
    flex-direction: column;
}

.message {
    background: var(--message-background);
    text-shadow: 1px 1px 2px var(--message-shadow-color);
    padding: 4px;
    border-bottom: 1px solid var(--message-shadow-color);
    font-size: 16px;
    color: gray;
}

.perplex {
    position: absolute;
    top: 0;
    left: 0;
    animation: perplex-animation 30s forwards;
    white-space: nowrap;
}

.message.perplex,
.message.perplex:nth-child(even) {
    background: unset;
    border-bottom: unset;
}

.message-thread {
    color: gray;
    font-size: 12px;
}

.message-thread::before {
    content: '>>> ';
}

.message:has(.author) {
    color: var(--message-color);
}

.message .author {
    font-weight: bold;
}

.message:nth-child(even) {
    background: var(--message-background-alt);
}

.message .badge,
.message .emote {
    height: 18px;
}

.message img {
    vertical-align: middle;
    margin: 0 2px;
}

.message img:first-child {
    margin-left: 0;
}

.message:last-child {
    border-bottom: none;
}

@keyframes perplex-animation {
    from {
        left: 100%;
    }

    to {
        left: -100%;
    }
}