* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@font-face {
    font-family: 'IBMPlexSans';
    src: url('/static/IBMPlexSans-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Merriweather';
    src: url('/static/Merriweather.ttf') format('truetype');
}

@media only screen and (max-width: 850px) {
    .container {
        width: 80% !important;
    }

    .header #logo {
        width: 245px !important;
    }

    .header {
        flex-direction: column;
        align-items: center;
    }

    .header #menu {
        margin-top: 1rem;
        gap: 1rem !important;
    }

    .content h1 {
        font-size: 30px !important;
    }

    article.main-content {
        font-size: 15px !important;
    }

    article.post-content {
        line-height: 23px !important;
    }
        
    .buttons-list {
        flex-direction: column !important;
    }

    .horizontal-fields {
        flex-direction: column !important;
    }

    footer.footer {
        flex-direction: column !important;
    }

    .discover_post {
        flex-direction: column !important;
        gap: unset !important;
    }
}

body {
    background: #18171c;
    color: #e9d4ce;
}

.header #menu a.link-active, .link-active {
    text-decoration: underline;
    opacity: 1;
}

.container {
    display: flex;
    flex-direction: column;
    width: 60%;
    margin: 0 auto;
    min-height: 60vh;
}

.container-row-fluid {
    display: flex;
    flex-direction: row;
    width: 100%;
    margin: 0 auto;
    justify-content: space-between;
    align-items: center;
}

.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
    border-bottom: 1px solid #3333333b;
    font-family: "IBMPlexSans";
}

.header #logo { background-image: url('/static/logo.png');
    background-size: contain;
    background-repeat: no-repeat;

    width: 280px;
    height: 70px;
}

.header #menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
}

.header #menu a {
    text-decoration: none;
    color: #eeeeee;
    transition: 0.3s;
    opacity: 0.85;
} .header #menu a:hover {
    color: #e9d4ce;
    opacity: 1;
}

.content {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: 3rem 0;
    color: #dfd9d9;
}

.content h1, .content h2, .content h3 {
    font-family: "Merriweather";
}

.content h1 {
    font-size: 50px;
}

.content .centered {
    text-align: center;
    width: 100%;
    display: block;
    margin: 1rem;
}

article.main-content {
    padding: 3rem 0;
    font-size: 18px;
    font-family: "IBMPlexSans";
    text-align: justify;
}

article.blog-content {
    font-size: 18px;
    font-family: "IBMPlexSans";
    text-align: justify;
    margin-bottom: 1rem;
}

article.main-content form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/*
article.blog-content h3 {
    margin-top: 1rem;
    margin-bottom: 1rem;
}
*/
.action-links {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
}

.action-links .or-separator {
    font-weight: bold;
    font-family: "IBMPlexSans";
    color: #888;
    font-size: 0.9rem;
}

.btn {
    display: flex;
    text-decoration: none;
    border-radius: 8px;
    min-width: 13rem;
    height: 3rem;
    justify-content: center;
    align-items: center;
    font-family: "IBMPlexSans";
    box-shadow: 2px 1px 49px -4px rgba(62,29,138,0.87);
    -webkit-box-shadow: 2px 1px 49px -8px rgba(62,29,138,0.87);
    -moz-box-shadow: 2px 1px 49px -4px rgba(62,29,138,0.87);
    transition: 0.3s;
    cursor: pointer;
    padding: 1rem;
}

.btn.purple {
    background: #694AB0;
    color: #fffbfb;
}

.btn.purple:hover {
    background: #795EB5;
}

.buttons-list {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    margin-top: 1rem;
}

a.btn.empty {
    border: 2px solid #694AB0;
    color: #9B8EB9;
}

a.btn.empty:hover {
    color: #fff;
}

a.btn.red {
    background: #B32D2D;
    color: #fffbfb;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
}

footer.footer {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    gap: 1rem;
    font-family: "Merriweather";
    border-top: 1px solid #3333333b;
    padding: 2rem 0;
    color: #757575;
}

footer.blog.footer {
    gap: 3px;
}

.footer a {
    text-decoration: none;
    color: #757575;
    transition: 0.3s;
}

.footer a:hover {
    text-decoration: underline;
    color: #fff;
}

form input {
    max-width: 200px;
    height: 35px;
    background: #302746;
    border: 1px solid #000;
    border-radius: 8px;
    color: #fff;
    padding: 1rem;
    box-shadow: 2px 1px 49px -4px rgba(62,29,138,0.87);
    -webkit-box-shadow: 2px 1px 49px -12px rgba(62,29,138,0.87);
    -moz-box-shadow: 2px 1px 49px -4px rgba(62,29,138,0.87);
    border: 0;
} form input.medium {
    max-width: 350px;
}

form input:focus {
    outline: none;
    border: 1px solid #685d84;
}

select {
    display: flex;
    text-decoration: none;
    border-radius: 8px;
    width: 7rem;
    height: 2rem;
    justify-content: center;
    align-items: center;
    font-family: "IBMPlexSans";
    transition: 0.3s;
    cursor: pointer;
    border: none;
    color: #9B8EB9;
    background: none;
}

div.error {
    display: flex;
    width: 50%;
    min-height: 3rem;
    align-items: center;
    padding: 1rem;
    background: #b75353;
    margin-bottom: 1rem;
    border-radius: 8px;
    border: 1px solid #461111;
    color: #fff;
    gap: 1rem;
}

div.message {
    display: flex;
    width: 50%;
    min-height: 3rem;
    align-items: center;
    padding: 1rem;
    background: #344486;
    margin-bottom: 1rem;
    border-radius: 8px;
    border: 1px solid #0b1a46;
    color: #fff;
    gap: 1rem;
}

form input[type=radio], form input[type=checkbox] {
    height: 20px;
}

div.horizontal-fields {
    max-height: 30px;
}

div.bloginfo {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 2rem;
    border-bottom: 1px solid #3333333b;
    padding: 1.5rem;
}

span.bloginfo {
    font-size: 20px;
    font-family: "IBMSansPlex";
    margin-bottom: 1rem;
}

textarea.post_content {
    min-height: 400px;
    background: #302746;
    border: 1px solid #000;
    border-radius: 8px;
    color: #fff;
    padding: 1rem;
    border: 0;
    font-size: 15px;
}

textarea.post_content:focus {
    outline: none;
    border: 1px solid #685d84;
}

h1.blog-name {
    font-family: "Merriweather";
}

h1.blog-name a {
    text-decoration: none;
    color: #e9d4ce;
}

h1.post-title {
    font-family: "IBMPlexSans";
    margin-bottom: 1rem;
    font-size: 40px;
    margin-top: 1rem;
}

i.post-date {
    font-size: 15px;
}

i.post-date.updated {
    opacity: 0.5;
}

article.post-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    color: #e6e6e6;
    line-height: 30px;
    margin-bottom: 1rem;
    margin-top: 1rem;
}

article.post-content h1 {
    font-size: 30px;
}

article.post-content h1, article.post-content h2 {
    margin-top: 1.5rem;
}

article.post-content blockquote {
    color: #888;
    margin-left: 2rem;
    border-left: 4px solid #888;
    padding-left: 1em;
    font-style: italic;
}

article.post-content a {
    text-decoration: none;
    color: #af9cfb;
}

article.post-content a:hover {
    text-decoration: underline;
}

article.post-content ol, article.post-content ul, article.post-content img {
    max-width: 90%;
    height: auto;
}

article.post-content ol, article.post-content ul {
    padding-left: 2.5rem;
}

article.post-content p > img {
    display: block;
    margin: 0 auto;
}

.small.btn {
    max-width: 30px;
    max-height: 30px;
    min-width: 10px;
}

.small.btn.active, .btn.empty.active {
    border: 2px solid #D4C1FF;
    color: #D4C1FF;
}


table.posts {
    border-collapse: collapse;
}

a.action {
    text-decoration: none;
    color: #d2c5ff;
} a.action:hover {
    text-decoration: underline;
}

table.table {
    padding: 1rem;
}

table.table thead {
    height: 3rem;
}

table.table thead th {
    min-height: 2rem;
    background: #2c2244;
}

table.table tbody {
    height: 2.2rem;
}

table.table tbody td {
    text-align: center;
}

table.table tbody tr {
    height: 3rem;
}

table.table tbody tr:nth-child(odd) td {
    background: #684ab1;
}

table.table tbody tr:nth-child(even) td {
    background: #2c2244;
}

p code {
    background: #282c34;
    color: #abb2bf;
}

div.postlist_item {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    margin-bottom: -10px;
    align-items: center;
}

#like {
    cursor: pointer;
}

.flex {
    display: flex;
}

.row {
    flex-direction: row;
} .column {
    flex-direction: column;
}

.small-gap {
    gap: 5px;
} .medium-gap {
    gap: 1rem;
} .big-gap {
    gap: 2rem;
}

.to-right {
    justify-content: right;
} .to-left {
    justify-content: left;
} .to-center {
    justify-content: center;
} .space-between {
    justify-content: space-between;
}

.post-content#posts {
    gap: 0;
}

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

i.caption {
    color: #555;
    font-size: 15px;
    display: block;
    text-align: center;
}

.file_upload {
  width: 8rem;
}

.file_upload::-webkit-file-upload-button {
  visibility: hidden;
}
.file_upload::before {
  content: 'Upload file';
  display: inline-block;
  background: #694AB0;
  border-radius: 3px;
  padding: 5px 8px;
  outline: none;
  white-space: nowrap;
  -webkit-user-select: none;
  cursor: pointer;
  font-weight: 700;
  font-size: 10pt;
  color: #fff;
  transition: 0.3s;
  min-width: 7rem;
  text-align: center;
  min-height: 1.5rem;
  line-height: 1.7rem;
}
.file_upload:hover::before {
  background: #795EB5;
}
.file_upload:active::before {
  background: -webkit-linear-gradient(top, #e3e3e3, #f9f9f9);
}

input[type="checkbox"] {
    width: 20px; /* Szerokość checkboxa */
    height: 20px; /* Wysokość checkboxa */
    appearance: none; /* Usunięcie domyślnego stylu */
    background-color: #302747;
    border: 2px solid #383246;
    border-radius: 3px; /* Zaokrąglenie rogów */
    cursor: pointer; /* Kursor wskazujący */
    position: relative; /* Umożliwia pozycjonowanie pseudo-elementów */
}

input[type="checkbox"]:checked {
    background-color: #694AB0; /* Tło po zaznaczeniu */
    border: 2px solid #694AB0; /* Ramka po zaznaczeniu */
}

input[type="checkbox"]:checked::after {
    content: ''; /* Pseudo-element */
    position: absolute; /* Pozycjonowanie */
    left: 9px; /* Odstęp od lewej */
    top: 2px; /* Odstęp od góry */
    width: 12px; /* Szerokość ptaszka */
    height: 16px; /* Wysokość ptaszka */
    border: solid white; /* Kolor ptaszka */
    border-width: 0 2px 2px 0; /* Kształt ptaszka */
    transform: rotate(45deg); /* Obrót ptaszka */
}

a.link {
    color: #795EB5;
    text-decoration: none;
}

a.link:hover {
    text-decoration: underline;
}

.discover_post {
    display: flex;
    flex-direction: row;
    gap: 1rem;
}

form input:disabled {
    color: #979797;
    background: #1e182d;
    box-shadow: none;
}
