:root {
    --header-height: 64px;
    --blue-gray: #374955;
    --sky-blue: #86b1cc;
    /* use filter: instead of color: to color SVGs
     * https://isotropic.co/tool/hex-color-to-css-filter/ */
    --blue-gray-filter: invert(27%) sepia(20%) saturate(575%) hue-rotate(161deg) brightness(93%) contrast(93%);
    --sky-blue-filter: invert(73%) sepia(16%) saturate(657%) hue-rotate(160deg) brightness(90%) contrast(91%);
    --comment-column-width: 3px;
}

body {
    margin: 0;
    padding: 0;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
    background-color: var(--sky-blue);
    overflow-x: clip;
}

@media only screen and (min-width: 800px) {
    /* For bigger than phones */
    #block-container {
        max-width: 800px;
    }

    #loader {
        max-width: 800px;
    }

    .icon-img {
        height: 32px;
        width: 32px;
        padding: 0;
    }
}

#start-splash {
    position: fixed;
    width: 100vw;
    height: 100vh;
    padding: 0;
    margin: 0;
    background-color: white;
    z-index: 1;
}

.center {
    display: block;
    margin: auto;
    padding: auto;
    text-align: center;
}

#start-splash h1 {
    width: 100%;
    padding: 0;
    padding-top: 35vh;
    display: flex;
    justify-content: center;
    font-size: x-large;
    margin: 0;
}

#start-splash input {
    margin: 2em auto;
    border: none;
    color: var(--sky-blue);
    border-radius: 16px;
    font-size: 1.5em;
    padding: 4px;
}

#advance-button {
    width: 15%;
    margin: 2em auto;
    color: white;
    background-color: var(--sky-blue);
    text-align: center;
    visibility: hidden;
    padding: 4px 8px;
    border-radius: 16px;
}

#interests-text {
    color: var(--blue-gray);
}

#interest-selection {
    max-width: 400px;
    min-width: 40%;
    padding: 8px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#interest-selection li {
    display: inline;
    margin: .5em;
}

#interest-selection li a {
    padding: 4px 8px;
    border-radius: 16px;
    color: white;
    background-color: var(--sky-blue);
    transition: all 200ms ease-in-out;
}

#interest-selection li a:hover {
    background-color: var(--blue-gray);
}

#block-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-inline: auto;
    width: 100%;
}

.block {
    background-color: white;
    width: calc(100% - 16px);
    margin: 8px;
    border-radius: var(--header-height);
    padding: calc(var(--header-height) / 2);
    transition: all 200ms ease-in-out;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.block:not(.write-post) {
    padding-bottom: calc(3 * var(--header-height) / 2);
}

.reply-button {
    display: inline-block;
    border-radius: calc(var(--header-height) / 2);
    margin-top: calc(var(--header-height) / 8);
    padding: calc(var(--header-height) / 8) calc(var(--header-height) / 4);
    background-color: var(--sky-blue);
    color: white;
    cursor: pointer;
    transition: all 200ms ease-in-out;
}

.reply-button:hover {
    background-color: var(--blue-gray);
    color: white;
}

.reply-button:active {
    background-color: white;
    color: var(--blue-gray);
}

.post-header {
    position: relative;
}

.post-header .username {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: calc(var(--header-height) / 4);
    height: var(--header-height);
    display: flex;
    align-items: center;
    justify-content: left;
    font-size: larger;
}

.post-footer {
    height: calc(var(--header-height) / 2);
    position: relative;

    display: flex;
    justify-content: flex-end;
    margin-left: auto;
}

.icon {
    display: inline;
    color: var(--sky-blue);
    height: 32px;
    width: 80px;
}

.icon-img {
    filter: var(--blue-gray-filter);
    height: 24px;
    width: 24px;
    padding: 4px 0 4px 5px;
    display: inline-block;
    transition: all 200ms ease-in-out;
}

.icon-img:hover {
    filter: var(--sky-blue-filter)
}
.icon-img:active {
    filter: var(--sky-blue-filter)
}

.icon-count {
    color: var(--blue-gray);
    height: 100%;
    display: flex inline;
    cursor: default;
    transform: translate(5px, -30%);
}

.write-post {
    cursor: pointer;
    color: var(--blue-gray);
}

.write-post:hover {
    background-color: var(--sky-blue);
    color: white;
}

.write-post:active {
    background-color: var(---blue-gray);
}

.write-post h1 {
    display: flex;
    justify-content: center;
    align-items: center;
}

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

.pfp {
    max-width: var(--header-height);
    max-height: var(--header-height);
    float: left;
    border-radius: 50%;
}

.post p {
    margin-bottom: 0;
}

.post:not(.block) {
    border-left: var(--comment-column-width) solid var(--sky-blue);
    padding-left: calc(var(--header-height) / 2 - var(--comment-column-width));
}

.post-actions {
    margin: 8px;
    padding: 16px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#loader {
    display: flex;
    justify-content: center;
    margin-inline: auto;
}

.loader-icon {
    width: 50px;
    aspect-ratio: 1;
    border-radius: 50%;
    padding: 3px;
    background:
        radial-gradient(farthest-side,var(--blue-gray) 95%,#0000) 50% 0/12px 12px no-repeat,
        radial-gradient(farthest-side,#0000 calc(100% - 5px),var(--blue-gray) calc(100% - 4px)) content-box;
    animation: l6 2s infinite ;
}
@keyframes l6 {to{transform: rotate(1turn)}}

.post .loader-icon {
    background:
        radial-gradient(farthest-side,var(--blue-gray) 95%,#0000) 50% 0/12px 12px no-repeat,
        radial-gradient(farthest-side,#0000 calc(100% - 5px),var(--blue-gray) calc(100% - 4px)) content-box;
    margin: auto;
    margin-top: calc(3 * var(--header-height) / 2);
}

.skeleton-post {
    height: 55vh;
    position: relative;
}
