* {
    margin: 0;
    padding: 0;
}
body {
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    background-color: rgb(26, 26, 26);
}
a, a:hover, a:visited {
    color: rgb(105, 188, 252);
    text-decoration: none;
}
b, strong {
    font-weight: 500;
}
ul, ol {
    list-style-position: inside;
}
p {
    margin: 0 0 20px 0;
}
.container-navbar {
    position: fixed;
    z-index: 2;
    float: left;
    width: 100%;
    height: 50px;
    top: 0;
    background-color: rgb(21, 21, 21);
    box-shadow: 0 1px 8px 0 rgb(105, 188, 252);
    transition: 0.1s;
}
.navbar {
    width: 92%;
    margin: 0 4%;
    display: flex;
    justify-content: space-between;
}
.navbar-logo {
    float: left;
    margin: 8px 0 0 0;
    font-size: 30px;
    font-weight: 500;
    color: rgb(105, 188, 252);
}
.navbar-menu {
    display: block;
    float: right;
    height: 36px;
    margin: 7px 0;
    cursor: pointer;
}
.navbar-menu-image {
    height: 100%;
}
.navbar-links {
    display: none;
    float: left;
    width: 100%;
    margin: 20vh 0 0 0;
}
.navbar-link {
    float: left;
    width: 80%;
    margin: 6px 10%;
    padding: 8px 10px;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    border-radius: 100px;
    border: 2px solid rgb(105, 188, 252);
    box-sizing: border-box;
}
.navbar-link:hover {
    color: rgb(21, 21, 21);
    background-color: rgb(105, 188, 252);
}
.navbar-logout {
    display: none;
    float: left;
    width: 80%;
    margin: 6px 10%;
}
.navbar-logout-button {
    width: 100%;
    padding: 8px 10px;
    font-size: 18px;
}
.article-form {
    float: left;
    width: 96%;
    margin: 70px 2% 0 2%;
}
.article-link,
.article-title,
.article-brief,
.article-text,
.article-image {
    float: left;
    width: 100%;
    margin: 4px 0 4px 0;
    padding: 8px 10px;
    font-size: 18px;
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    border: none;
    border-radius: 8px;
    color: rgb(255, 255, 255);
    background-color: rgb(38, 38, 38);
    box-sizing: border-box;
    outline: none;
}
.article-image.update {
    margin: 0 0 4px 0;
    border-radius: 0 0 8px 8px;
}
.article-submit {
    float: left;
    width: 100%;
    margin: 8px 0 20px 0;
}
#article-submit-error {
    display: none;
    float: left;
    width: 100%;
    margin: 4px 0 0 0;
    padding: 8px 4px;
    font-size: 18px;
    text-align: center;
    color: rgb(255, 0, 0);
    border-radius: 8px;
    border: 1px solid rgb(255, 0, 0);
    box-sizing: border-box;
}
#article-title-length,
#article-brief-length {
    float: left;
    width: 49%;
    text-align: right;
    margin: 0 1% 0 0;
    font-size: 16px;
    color: rgb(105, 188, 252);
}
.article-title-label,
.article-brief-label,
.article-text-label,
.article-image-label {
    float: left;
    width: 49%;
    margin: 0 0 0 1%;
    font-size: 18px;
    font-weight: 500;
    color: rgb(105, 188, 252);
}
.article-text-label {
    width: 100%;
    margin: 0 0 4px 1%;
}
.article-image-label {
    width: 100%;
    margin: 4px 0 0 1%;
}
.article-image-cropper {
    display: none;
    float: left;
    width: 100%;
    margin: 4px 0 0 0;
    border-radius: 8px 8px 0 0;
    background-color: rgb(38, 38, 38);
}
.article-image-cropper.update {
    display: block;
}
.article-image-cropper-original {
    float: left;
    width: 57%;
    margin: 10px 1% 0 2%;
}
.article-image-cropper-original.update {
    width: 80%;
    margin: 10px 10% 0 10%;
}
.article-image-cropper-cropped {
    float: left;
    width: 37%;
    margin: 10px 2% 0 1%;
}
.article-image-cropper-cropped.update {
    width: 0%;
    margin: 0;
}
#article-image-preview {
    float: left;
    width: 100%;
    box-sizing: border-box;
}
.preview {
    overflow: hidden;
    width: 100%;
    height: 200px;
    margin: 0;
}
.article-submit-load {
    display: none;
    width: 100%;
    text-align: center;
}
.article-submit-load ul {
    padding: 0;
    margin: 0;
}
.article-submit-load ul li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 2px 0 2px;
    list-style: none;
    border-radius: 50%;
    background-color: rgb(26, 26, 26);
    animation-name: bounce;
    animation-timing-function: ease-in-out;
    animation-duration: 1s;
    animation-iteration-count: infinite;
    animation-fill-mode: both;
}
.article-submit-load ul li:nth-child(1) {
    animation-delay: -0.32s;
}
.article-submit-load ul li:nth-child(2) {
    animation-delay: -0.16s;
}
@keyframes bounce {
    0%, 80%, 100% {
        transform: scale(0);
    }
    40% {
        transform: scale(1.0);
    }
}
.container-articles {
    float: left;
    width: 98%;
    margin: 80px 1% 50px 1%;
}
.articles {
    display: flex;
    float: left;
    width: 200%;
    margin: 10px 0 0 0;
    font-size: 18px;
    color: rgb(255, 255, 255);
}
.articles-id,
.articles-link,
.articles-date,
.articles-title,
.articles-edit.bold,
.articles-delete.bold,
.articles-edit.bold:hover,
.articles-delete.bold:hover,
.articles-edit.bold:visited,
.articles-delete.bold:visited {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px 0 4px;
    border: none;
    border-radius: 8px;
    color: rgb(255, 255, 255);
    background-color: rgb(38, 38, 38);
    box-sizing: border-box;
    cursor: auto;
}
.bold {
    font-weight: 500;
}
.articles-id {
    width: 4%;
    margin: 0 0.5% 0 0.5%;
}
.articles-link {
    width: 14%;
    margin: 0 0.5% 0 0.5%;
}
.articles-date {
    width: 14%;
    margin: 0 0.5% 0 0.5%;
}
.articles-title {
    width: 44%;
    margin: 0 0.5% 0 0.5%;
    padding: 10px 2% 10px 2%;
    box-sizing: border-box;
}
.articles-edit,
.articles-delete {
    display: flex;
    align-items: center;
    justify-content: center;
    float: left;
    width: 9%;
    margin: 0 0.5% 0 0.5%;
    font-size: 18px;
    font-weight: 500;
    border-radius: 8px;
    background-color: rgb(38, 38, 38);
    box-sizing: border-box;
    cursor: pointer;
}
button.articles-delete {
    width: 100%;
    height: 100%;
    padding: 0;
}
.articles-edit,
.articles-edit:hover,
.articles-edit:visited {
    color: rgb(0, 230, 0);
    border: 2px solid rgb(0, 230, 0);
}
button.articles-delete,
button.articles-delete:hover,
button.articles-delete:visited {
    color: rgb(255, 26, 26);
    border: 2px solid rgb(255, 26, 26);
}
.button-load-more {
    float: left;
    width: 60%;
    margin: 20px 20%;
}
input[type="file"]::-webkit-file-upload-button{
    color: rgb(255, 255, 255);
    background-color: rgb(38, 38, 38);
    font-size: 18px;
    font-family:     'Roboto', Arial, Helvetica, sans-serif;
    border: none;
    outline: none;
    cursor: pointer;
}
input[type="file"]::file-selector-button{
    color: rgb(255, 255, 255);
    background-color: rgb(38, 38, 38);
    font-size: 18px;
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    border: none;
    outline: none;
    cursor: pointer;
}
button {
    padding: 8px 10px 8px 10px;
    font-size: 18px;
    font-weight: 500;
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
    border: none;
    border-radius: 1000px;
    color: rgb(26, 26, 26);
    background-color: rgb(105, 188, 252);
    outline: none;
    box-sizing: border-box;
    cursor: pointer;
}
textarea {
    resize: vertical;
}
.error {
    float: left;
    width: 100%;
    margin: 150px 0 0 0;
    font-size: 30px;
    font-weight: 500;
    text-align: center;
    color: rgb(105, 188, 252);
}
.ck.ck-editor {
    position: static !important;
}
.ck.ck-toolbar.ck-toolbar_grouping {
    border: none !important;
    border-radius: 8px 8px 0 0 !important;
    background-color: rgb(38, 38, 38) !important;
}
.ck.ck-toolbar__items {
    margin: 1px 0 0 0 !important;
    border: none !important;
    border-bottom: 1px solid rgb(105, 188, 252) !important;
    background-color: rgb(38, 38, 38) !important;
}
.ck.ck-sticky-panel__content,
.ck.ck-sticky-panel__content_sticky {
    position: static !important;
}
.ck.ck-button.ck-off:hover,
.ck.ck-button.ck-disabled.ck-off:hover {
    border-radius: 4px !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(105, 188, 252) !important;
}
.ck.ck-button.ck-off,
.ck.ck-button.ck-disabled.ck-off {
    opacity: 1 !important;
    color: rgb(255, 255, 255) !important;
    cursor: pointer !important;
}
.ck.ck-button.ck-on {
    border-radius: 4px !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(105, 188, 252) !important;
    cursor: pointer !important;
}
.ck.ck-content.ck-editor__editable.ck-rounded-corners.ck-editor__editable_inline.ck-blurred,
.ck.ck-content.ck-editor__editable.ck-rounded-corners.ck-editor__editable_inline.ck-focused {
    min-height: 400px !important;
    border: none !important;
    border-radius: 0 0 8px 8px !important;
    font-size: 18px !important;
    font-family: 'Roboto', Arial, Helvetica, sans-serif !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(38, 38, 38) !important;
}
.ck.ck-balloon-panel.ck-balloon-panel_visible.ck-balloon-panel_with-arrow {
    border: 1px solid rgb(105, 188, 252) !important;
    border-radius: 8px !important;
    background-color: rgb(26, 26, 26) !important;
}
.ck.ck-label {
    font-size: 16px !important;
    font-family: 'Roboto', Arial, Helvetica, sans-serif !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(26, 26, 26) !important;
}
.ck.ck-button__label {
    font-size: 16px !important;
    font-family: 'Roboto', Arial, Helvetica, sans-serif !important;
    color: rgb(255, 255, 255) !important;
}
.ck.ck-input.ck-input-text,
.ck.ck-input.ck-input-text.ck-input_focused {
    font-size: 16px !important;
    font-family: 'Roboto', Arial, Helvetica, sans-serif !important;
    box-shadow: none !important;
    border-radius: 8px !important;
    border: 1px solid rgb(105, 188, 252) !important;
    color: rgb(255, 255, 255) !important;
    background-color: rgb(26, 26, 26) !important;
}
.ck.ck-balloon-panel:after {
    display: none !important;
}
.ck.ck-balloon-panel:before {
    border-bottom-color: rgb(105, 188, 252) !important;
}
.container-login {
    width: 100%;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.login-form {
    width: 80%;
}
.login-input-username,
.login-input-password {
    float: left;
    width: 100%;
    margin: 0 0 10px 0;
    padding: 10px 0 10px 0;
    font-size: 17px;
    text-align: center;
    border: none;
    border-radius: 100px;
    color: rgb(255, 255, 255);
    background-color: rgb(38, 38, 38);
    box-sizing: border-box;
    outline: none;
}
.login-input-username::placeholder,
.login-input-password::placeholder {
    color: rgb(255, 255, 255);
}
.login-input-username::-moz-placeholder,
.login-input-password::-moz-placeholder {
    color: rgb(255, 255, 255);
    opacity: 1;
}
.login-button-submit {
    float: left;
    width: 100%;
    margin: 0;
    padding: 10px 0 10px 0;
    font-size: 17px;
    text-align: center;
    color: rgb(26, 26, 26);
    background-color: rgb(105, 188, 252);    
}
.login-error {
    float: left;
    width: 100%;
    padding: 8px 0 0 0;
    font-size: 17px;
    text-align: center;
    color: rgb(255, 0, 0);
}
@media screen and (min-width: 768px) {
    .container-navbar {
        height: 60px;
    }
    .navbar {
        width: 80%;
        margin: 0 10%;
    }
    .navbar-logo {
        margin: 10px 0 0 0;
        font-size: 38px;
    }
    .navbar-menu {
        height: 44px;
        margin: 8px 0;
    }
    .navbar-links {
        margin: 25vh 0 0 0;
    }
    .navbar-link {
        width: 60%;
        margin: 8px 20%;
        font-size: 20px;
    }
    .navbar-logout {
        width: 60%;
        margin: 8px 20%;
    }
    .navbar-logout-button {
        padding: 8px 20px;
        font-size: 20px;
    }
    .article-form {
        width: 70%;
        margin: 80px 15% 0 15%;
    }
    .article-link,
    .article-title,
    .article-brief,
    .article-text,
    .article-image {
        margin: 6px 0 6px 0;
        padding: 8px 12px 8px 12px;
    }
    .article-submit {
        margin: 12px 0 20px 0;
    }
    .articles {
        width: 100%;
    }
    .error {
        margin: 150px 0 0 0;
        font-size: 40px;
    }
    .login-form {
        width: 40%;
    }
    .login-input-username,
    .login-input-password,
    .login-button-submit,
    .login-error {
        font-size: 18px;
    }
}
@media screen and (min-width: 992px) {
    .container-navbar {
        height: 60px;
    }
    .navbar {
        width: 80%;
        margin: 0 10%;
    }
    .navbar-logo {
        margin: 10px 0 0 0;
        font-size: 38px;
    }
    .navbar-menu {
        display: none;
    }
    .navbar-links {
        display: block;
        width: auto;
        margin: 0;
    }
    .navbar-link {
        width: auto;
        margin: 10px 10px 0 10px;
        padding: 6px 10px;
    }
    .navbar-image {
        width: auto;
        height: 40px;
        margin: 10px 10px 0 0;
    }
    .navbar-icon {
        margin: 0;
    }
    .navbar-logout {
        display: block;
        width: auto;
        margin: 10px 0 0 0;
    }
    .navbar-logout-button {
        width: auto;
        padding: 8px 20px;
    }
    .article-form {
        width: 60%;
        margin: 80px 20% 0 20%;
    }
    .article-link,
    .article-title,
    .article-brief,
    .article-text,
    .article-image {
        margin: 6px 0 6px 0;
        padding: 8px 12px 8px 12px;
    }
    .article-submit {
        margin: 12px 0 20px 0;
    }
    .error {
        margin: 150px 0 0 0;
        font-size: 40px;
    }
    .login-form {
        width: 20%;
    }
}
@media screen and (min-width: 1200px) {
    .navbar-link {
        font-size: 20px;
    }
    .navbar-logout-button {
        padding: 8px 25px;
        font-size: 20px;
    }
    .article-form {
        width: 50%;
        margin: 80px 25% 0 25%;
    }
    .article-link,
    .article-title,
    .article-brief,
    .article-text {
        margin: 6px 0 6px 0;
        padding: 8px 12px 8px 12px;
        font-size: 20px;
    }
    .article-submit {
        margin: 12px 0 20px 0;
    }
    #article-submit-error {
        margin: 6px 0 0 0;
        font-size: 20px;
    }
    .article-title-label,
    .article-brief-label,
    .article-text-label,
    .article-image-label {
        font-size: 20px;
    }
    .article-text-label {
        margin: 0 0 6px 1%;;
    }
    .article-image-label {
        margin: 6px 0 0 1%;
    }
    .article-image-cropper {
        margin: 6px 0 0 0;
    }
    .article-image-cropper-original {
        margin: 15px 1% 0 2%;
    }
    .article-image-cropper-original.update {
        margin: 15px 10% 0 10%;
    }
    .article-image-cropper-cropped {
        margin: 15px 2% 0 1%;
    }
    .button-load-more {
        width: 40%;
        margin: 20px 30%;
    }
    button {
        font-size: 20px;
    }
    .error {
        margin: 150px 0 0 0;
        font-size: 40px;
    }
    .ck.ck-content.ck-editor__editable.ck-rounded-corners.ck-editor__editable_inline.ck-blurred,
    .ck.ck-content.ck-editor__editable.ck-rounded-corners.ck-editor__editable_inline.ck-focused {
        font-size: 20px !important;
    }
}