.posts-container {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.posts-container .year {
    display: flex;
    flex-direction: column;
}

.posts-container h1 {
    text-align: center;
}

.year h2 {
    margin-bottom: 2rem;
    color: var(--tx-2);
}

.year h3 {
    margin-bottom: 0.2rem;
    color: var(--tx-3);
}

.month {
    margin-bottom: 2rem;
}

.posts-container .cell {
    display: flex;
    flex-direction: row;
    align-items: first baseline;
    border-radius: 8px;
    transition: transform 0.1s ease;
    gap: 0.4rem;
    padding: 6px 0px;
}

.posts-container .cell:active {
    transform: translateY(2px);
}

.posts-container .cell .title {
    flex-grow: 0;
    max-width: fit-content;
    /* text-wrap: ; */
    flex-basis: auto;
    color: var(--tx);
}

.posts-container .cell:hover .title {
    text-decoration: underline;
    text-decoration-skip: objects;
    text-decoration-color: var(--tx);
}

.posts-container .cell .preview-text {
    border: 1px solid red;
    flex-grow: 1; /* Allow the text to fill the available space */
    /* margin: 0 10px; Optional: Add some spacing around the text */
    overflow: hidden; /* Hide overflow */
    white-space: nowrap; /* Prevent wrapping */
    text-overflow: ellipsis; /* Add ellipsis when text overflows */
}

.posts-container .cell .line {
    min-width: 2rem;
    flex-grow: 1; /* Allow the line to take up the remaining space */
    background-image: repeating-linear-gradient(
        to right,
        var(--ui),
        /* Dot color */ var(--ui) 2px,
        /* Dot width */ transparent 1px,
        /* Gap starts */ transparent 6px /* Gap width */
    );

    height: 2px;
    margin: 0px 8px; /* Optional: add a small margin for visual separation */
}

.posts-container .new-tag {
    display: block;
    line-height: normal;
    background: rgb(255, 175, 0);
    background: linear-gradient(
        0deg,
        rgba(255, 175, 0, 1) 0%,
        rgba(255, 205, 0, 1) 100%
    );
    font-size: 0.5rem;
    padding: 2px 5px;
    border-radius: 5px;
    color: black;
}

.content article figure {
  /* margin-top: 50px !important; */
}
.content article figure ul {
  list-style-type: none;
}

.content article figure ul li {
  margin-bottom: 40px;
}

@media screen and (max-width: 450px) {
    .posts-container .cell .line {
        display: none;
    }

    .posts-container .cell {
        flex-direction: column;
        border-bottom: 1px solid var(--bg-2);
        border-radius: 0px;
    }

    .posts-container a .cell {
        border-bottom: 1px solid var(--bg-2);
    }

    .posts-container a:last-child .cell {
        border-bottom: none !important;
    }
}
