@import url("../fonts/poppins/poppins.css");
@import url("../fonts/opensans/opensans.css");

html {
    scroll-margin-top: 4rem;
}

*:hover,
*:active {
    -webkit-box-shadow: unset;
    -moz-box-shadow: unset;
    box-shadow: unset;
}

*:focus {
    -webkit-box-shadow: inset 0 0 0 3px var(--bg3);
    -moz-box-shadow: inset 0 0 0 3px var(--bg3);
    box-shadow: inset 0 0 0 3px var(--bg3);
}

:root {
    /* FONTS */
    --display-font: 'Poppins', sans-serif;
    --main-font: 'Open Sans', sans-serif;

    /* UNITS
     * unit size      - every element should be a multiplier of this
     * main size      - used for headers and icons
     * medium size    - same as above, except that the element in question is contained in something else
     * small size     - used in common text, borders
     */
    --unit-size: 0.5rem;
    --main-size: 1.5rem;
    --medium-size: 1.2rem;
    --small-size: 1rem;


    /* transitions and animations */
    --cubic-transition: all 200ms cubic-bezier(0, 0.55, 0.45, 1);
    --fade-in: fadeIn 200ms cubic-bezier(0, 0.55, 0.45, 1);
    --fade-out: fadeOut 200ms cubic-bezier(0, 0.55, 0.45, 1);
}

h1,h2,h3,h4,h5,h6 {
    font-family: var(--display-font);
}

@media (prefers-color-scheme: dark) {
    :root {
        /* colours and shadows */
        --bg1: #242434;
        --bg2: #46465E;
        --bg3: #8081BA;
        --bg-button: linear-gradient(180deg, var(--bg2), transparent) !important;

        --translucent: #1A1A2666;
        --white: #FFFFFF;

        --shadow: 0px 0px 32px 0px #00000066;
        --shadow-light: 0px 0px 32px 0px #FFFFFF66;
    }

    .bg {
        background-color: var(--bg1);
        background-image: url("../images/bg.png");
    }

    body:after {
        content: "";
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: -1;
        background-image: url(data:image/png;base64,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);
    url(data:image/png;base64,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);
        opacity: 21%;
        filter: grayscale(100%);
    }

    select {
        background-image: url("../images/drop.png") !important;
    }
}

@media (prefers-color-scheme: light) {
    :root {
        /* colours and shadows */
        --bg1: #eceff4;
        --bg2: #4c566a66;
        --bg3: #2e3440;
        --bg-button: #d8dee966 !important;

        --translucent: #eceff488;
        --white: #2e3440;

        --shadow: 0px 0px 32px 0px #00000066;
        --shadow-light: 0px 0px 32px 0px #FFFFFF66;
    }

    .bg {
        background-color: var(--bg1);
        background-image: url(../images/bg-light.png);
    }

    select {
        background-image: url("../images/drop-light.png") !important;
    }
}


a,
a:visited {
    text-decoration: none;
    color: var(--white);
}

a:hover {
    text-decoration: underline;
    color: var(--white);
}

figcaption a:link {
    font-size: var(--small-size);
    color: var(--white);
}

hr {
    all: unset;
    display: block;
    height: 1px;
    background: var(--bg2);
}

/* CHECKERBOARD BACKGROUND FOR TRANSPARENT IMAGES */
.note img {
    background: repeating-conic-gradient(
            #ffffff66 0deg 90deg,
            #ffffff33 0deg 180deg) 0 0/40px 40px round;
}


/* BACKGROUND IMG GRADIENT */
.bg {
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

.anchor-hidden {
    display: none;
}

/* HEADER AND SIDEPANELS */
#header {
    z-index: 1;
    font-family: var(--display-font);
    font-size: var(--main-size);

    height: 3rem;
    display: flex;
    position: fixed;
    top: 0;
    background-color: var(--bg1);

    width: 100%;
    align-items: center;
    padding: var(--unit-size);

    box-shadow: var(--shadow);
}

#instance {
    display: flex;
    align-items: center;
    align-self: center;
    margin-left: auto;
    margin-right: auto;
}

#instance h1 {
    margin-left: 4px;
}

.icon {
    fill: var(--white);
    align-self: center;
}

/* CURRENT PAGE LINK */
.active {
    font-weight: bold;
}

/* CONTAINS ALL ELEMENTS BESIDES HEADER */
.container {
    position: relative;
    top: 3rem;

    width: 53vw;
    margin-left: auto;
    margin-right: auto;

    justify-content: center;
    padding: var(--unit-size) var(--unit-size) 0 var(--unit-size);
}

/* THE FOCUSED (middle) DIV */
.content {
    display: flex;
    flex-direction: column;
    padding: var(--unit-size) var(--unit-size) 0 var(--unit-size);

    width: 100%;
}

.markdown-blocks {
    background-color: var(--translucent);
    border-radius: 0 0 var(--unit-size) var(--unit-size);
    border: solid 2px var(--bg2);
    border-top: solid 2px var(--bg3);
    padding: var(--unit-size);
}

.markdown-blocks ul {
    margin-left: 1em;
    list-style: disc;
}

.markdown-blocks ul li {
    margin-bottom: 0.2em;
}

.doc-navigation {
    background-color: var(--translucent);
    border-radius: var(--unit-size) var(--unit-size) 0 0;
    border: solid 2px var(--bg2);
    border-bottom: none;
    padding: var(--unit-size);
}

.doc-navigation ul {
    display: flex;
    justify-content: space-evenly;
    font-size: var(--main-size);
}

/* NOTES */
#replyform {
    padding: var(--unit-size);
    margin-top: var(--unit-size);
    background-color: var(--translucent);
    border-radius: var(--unit-size);
    display: flex;
    flex-direction: column;
    font-size: var(--small-size);
}

#replyform textarea {
    width: 100%;
    resize: vertical;
    margin-top: var(--unit-size);
    padding: var(--unit-size);
}

.h-entry {
    margin-top: var(--unit-size);
}

.notes hr {
    margin-top: 5px;
}

.h-entry a {
    text-decoration: underline;
}

.h-entry .embed header {
    padding: var(--unit-size);
}

.h-entry .embed .p-summary {
    padding: var(--unit-size);
}

.h-entry,
.note {
    display: flex;
    background-color: var(--translucent);
    border-radius: var(--unit-size);
    border: solid 2px var(--bg2);
}

.note-wrapper {
    width: 100%;
    height: inherit;
}

.note-sidebar {
    padding: var(--unit-size);
}

.note-sidebar * {
    display: flex;
    flex-direction: column;
    margin-left: auto;hr
    margin-right: auto;
    max-height: 100%;
}

.note-sidebar .avatar {
    width: 3rem;
    height: auto;
    background: unset;
    margin-bottom: var(--unit-size);
}

.h-entry .replies .h-entry {
    background-color: unset;
    padding: 0 var(--unit-size) var(--unit-size) 0;
    margin-left: var(--medium-size);
}

.note-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-height: 3rem;

    border-bottom: unset;
    border-radius: var(--unit-size) var(--unit-size) 0 0;

    background: linear-gradient(to left, var(--translucent), transparent);
    font-size: var(--medium-size);
    padding: 5px 10px 5px 0;
}

.note-author {
    font-size: var(--medium-size);
    font-weight: bold;
    display: flex;
    align-items: center;
    align-self: center;
}

.note-actions {
    display: flex;
    vertical-align: middle;
}

.button-container {
    all: unset;
    border: none !important;

    background-repeat: no-repeat !important;

    width: var(--medium-size) !important;
    height: var(--medium-size) !important;

    margin-left: var(--unit-size);
    text-indent: -9999em;
}

.button-container:hover,
.button-container:focus {
    border: none !important;
    background: var(--bg3) !important;
}

.favourite-button-container {
    -webkit-mask-image: url("../icons/heart.svg") !important;
    -o-mask-image: url("../icons/heart.svg") !important;
    -moz-mask-image: url("../icons/heart.svg") !important;
    mask-image: url("../icons/heart.svg") !important;
}

.reply-button-container {
    -webkit-mask-image: url("../icons/reply.svg") !important;
    -o-mask-image: url("../icons/reply.svg") !important;
    -moz-mask-image: url("../icons/reply.svg") !important;
    mask-image: url("../icons/reply.svg") !important;
}

.repeat-button-container {
    -webkit-mask-image: url("../icons/repeat.svg") !important;
    -o-mask-image: url("../icons/repeat.svg") !important;
    -moz-mask-image: url("../icons/repeat.svg") !important;
    mask-image: url("../icons/repeat.svg") !important;
}

.note-actions-unset {
    background: var(--bg2) !important;
}

.note-actions-set {
    background: var(--white) !important;
}

.note-content {
    border-radius: 0 0 var(--unit-size) var(--unit-size);

    height: max-content;
    padding: var(--small-size);
}

.note-text {
    margin-bottom: var(--unit-size);
}

.note-attachments * {
    display: flex;
    max-width: 100%;
}

.note-attachments > figure {
    display: flex;
    flex-direction: column;
    margin: 0;
    border-radius: var(--unit-size);
    background-color: var(--translucent);
    padding: var(--small-size);
}

.note-attachments > figure * {
    width: max-content;
    height: auto;
}

.note-attachments > figure figcaption {
    word-break: break-all;
    padding-top: var(--small-size);
}

/* SECTIONS */
.section-widget {
    display: flex;
    flex-direction: column;
    width: 100%;

    background-color: var(--translucent);
    border-radius: var(--unit-size);
    border: solid 2px var(--bg2);
    margin-bottom: var(--medium-size);

    color: var(--white);
}

.section-widget-padded {
    padding: var(--unit-size);
}

.section-title {
    font-size: var(--medium-size);
    font-weight: 700;
    margin: 0;
}

.section-widget-button-like {
    border: 2px solid var(--bg2);
    border-radius: var(--unit-size);
    background: var(--bg-button);
    padding: 5px 10px;
    margin-top: 5px;

    cursor: pointer;
    float: right;
    align-self: end;

    font-family: var(--main-font);
    font-weight: 700;
}

.section-title-details {
    font-size: var(--medium-size);
    font-weight: 700;

    border-radius: var(--unit-size);
    padding: 5px 10px 5px 10px;

    background-color: var(--translucent);
}

.section-title-details[open] svg {
    transform: rotate(180deg);
    animation: var(--fade-out)
}

/* SECTION DETAILS CLOSED */
.section-title-details:not([open]) svg {
    transform: initial;
    animation: var(--fade-in);
}

.section-title-summary {
    display: flex;
    justify-content: space-between;
}

.section-form {
    display: flex;
    flex-direction: column;
    padding: var(--unit-size);
}

.section-form-legend {
    margin-top: unset;
    margin-bottom: 10px;

    font-weight: bold;
    font-size: var(--main-size);
}

.section-form-label {
    margin-bottom: 5px;
}

.form-group {
    all: unset;

    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
}

.help-block {
    margin-top: 5px;
    margin-bottom: 10px;
}

.help-text {
    font-style: italic;
    font-size: var(--small-size);
    margin-top: 5px;
    margin-bottom: 10px;
}

.help-block > .list-unstyled,
.alert,
.alert-danger {
    display: inline-block;

    border: solid 2px #FF6347;
    background-color: #FF634733;
    border-radius: var(--unit-size);

    padding: 2px 6px;
    margin-top: 5px;
    margin-bottom: 10px;
}

.section-form-options {
    display: block !important;
    margin-bottom: var(--unit-size);
}

.section-form-textarea {
    border-radius: var(--unit-size);
    background-color: var(--translucent);
    color: var(--white);

    width: 100%;
    max-width: 100%;
    height: calc(6 * var(--main-size));

    border: 2px solid transparent;
    resize: vertical;
}

/* BUTTONS AND INPUT SHENANIGANS */
label, button {
    font-weight: bold !important;
}

select,
button,
textarea,
input {
    font-size: inherit !important;
    color: var(--white);
    padding: 2px 8px;
    border: 2px solid var(--bg2);
    border-radius: var(--unit-size);
    background-color: var(--translucent);
}

button {
    background: var(--bg-button);
    padding: 2px 8px;
    margin-left: auto;
}

select {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;

    background-repeat: no-repeat;
    background-size: 16px;
    background-position: center right 5px;

    color: var(--white) !important;
    border: 2px solid var(--bg2);
    border-radius: var(--unit-size);
}

input[type=radio] {
    border: solid 0.25em var(--bg2) !important;
    background-color: var(--bg1) !important;
}

input[type=checkbox] {
    all: unset;

    display: inline-block;
    width: var(--medium-size);
    height: var(--medium-size);
    vertical-align: middle;

    background-color: var(--bg2) !important;
    background-size: cover;
    margin-right: 2px;

    -webkit-mask-image: url("../icons/check-off.svg") !important;
    -o-mask-image: url("../icons/check-off.svg") !important;
    -moz-mask-image: url("../icons/check-off.svg") !important;
    mask-image: url("../icons/check-off.svg") !important;
}

/* DISABLED STATE TEXT COLOR */
:is(:disabled, :disabled:active)::file-selector-button,
button:is(:disabled, :disabled:active),
input:is([type=reset], [type=button], [type=submit]):is(:disabled, :disabled:active),
select:is(:disabled, :disabled:active) > button {
    color: var(--white) !important;
}

/* HOVER AND FOCUS */
textarea:hover,
textarea:focus,
button:hover,
button:focus,
input:hover,
input:focus,
select:hover,
select:focus {
    color: var(--white) !important;
    -webkit-box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
    -moz-box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
    box-shadow: inset 0px 0px 0px 2px var(--bg3) !important;
}

/* checkbox and radio */
input[type=radio]:hover,
input[type=radio]:focus,
input[type=checkbox]:hover,
input[type=checkbox]:focus {
    color: var(--white) !important;
    background-color: var(--bg3) !important;
}

input[type=radio]:checked {
    background-color: var(--white) !important;
}

input[type=checkbox]:checked {
    background-color: var(--bg3) !important;
    -webkit-mask-image: url("../icons/check-on.svg") !important;
    -o-mask-image: url("../icons/check-on.svg") !important;
    -moz-mask-image: url("../icons/check-on.svg") !important;
    mask-image: url("../icons/check-on.svg") !important;
}

/* file selector */
input[type=file] {
    font-family: var(--main-font) !important;
    font-weight: normal !important;
    padding: unset !important;

    background: var(--bg-button);
    border: 2px solid var(--bg2);
    border-radius: var(--unit-size);
}

/* button part of file selector */
::file-selector-button {
    font-family: var(--main-font) !important;
    font-weight: bold !important;
    color: var(--white) !important;
}

/* ACCESSIBILITY MENU */
#accessibility-menu {
    display: block;
    position: absolute;
    z-index: 999;

    top: -90%;
    left: -90%;

    width: 30%;
    height: min-content;

    background-color: var(--bg1);
    padding: var(--unit-size);

    border: solid 2px var(--bg3);
    border-radius: var(--unit-size);
    box-shadow: var(--shadow);
}

#accessibility-menu ul {
    list-style-type: disc;
    margin-left: var(--medium-size);
}

#accessibility-menu:focus-within:not(:active) {
    top: var(--unit-size);
    left: var(--unit-size);
}

.anchor-hidden {
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* ANIMATIONS */
@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: translateY(-10px);
    }

    100% {
        opacity: unset;
        transform: none;
    }
}

@keyframes fadeOut {
    100% {
        opacity: 0;
        transform: translateY(-10px);
    }

    0% {
        opacity: unset;
        transform: none;
    }
}

@keyframes highlight {
    0% {
        box-shadow: initial;
        border-radius: var(--unit-size);
    }

    50% {
        border-radius: var(--unit-size);
        box-shadow: inset 0 20px 40px var(--white);
        transition: box-shadow 0.3s ease-in-out;
    }

    100% {
        box-shadow: initial;
        border-radius: var(--unit-size);
    }
}


/* PROFILE */
.profile {
    display: flex;
    flex-wrap: wrap;

    font-family: var(--main-font);
    background-color: var(--translucent);
    margin-bottom: var(--unit-size);
    border-radius: var(--unit-size);
    padding: var(--unit-size);
}
.profile > * {
     flex: 1;
}

.profile-info {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}
.profile-info-nickname {
    font-size: var(--medium-size);
}
.profile-info-tags {
    margin: unset;
}
.profile-info-stats strong {
    margin-right: 5px;
}
.profile-info-stats {
    margin-top: var(--unit-size);.content {
        max-width: 100%;
    }
}

.profile-avatar {
    max-width: 4rem;
    min-width: 3rem;
    width: 100%;
    height: auto;
    margin-right: 5px;
}

/* MEDIA QUERIES */
/* sidepanels need to be shown by default on desktop, hidden on mobile */
.panel .panel-content {
    display: flex;
    flex-direction: column;
    font-family: var(--main-font);
    font-size: var(--small-size);

    /* should remain in place for the user */
    position: fixed;
    top: 0;

    /* should be bellow header */
    margin-top: 3rem;

    /* should occupy the entire vertical real estate */
    height: calc(100% - 3rem);

    padding: var(--unit-size);

    overflow-y: auto;
}


@media only screen
and (min-width: 1800px) {
    .content {
        padding: var(--unit-size) var(--main-size) 0 var(--main-size);
    }

    .panel .panel-content {
        width: 12vw;
    }

    a[id|="anchor"]:target + .accessibility-target {
        animation-name: highlight;
        animation-duration: 600ms;
        animation-timing-function: ease-in-out;
    }
}

@media only screen
and (min-width : 1200px) and (max-width : 1800px) {
    .panel .panel-content {
        width: 22vw;
    }

    a[id|="anchor"]:target + .accessibility-target {
        animation-name: highlight;
        animation-duration: 600ms;
        animation-timing-function: ease-in-out;
    }
}

@media only screen
and (max-width: 1200px) {
    /* content should occupy the entire width at this size */
    .container {
        width: 100%;
    }

    #panel-left-toggle:not(:checked) ~ .panel-content,
    #panel-right-toggle:not(:checked) ~ .panel-content {
        display: none;
    }

    #panel-left-toggle:checked ~ .panel-content,
    #panel-right-toggle:checked ~ .panel-content,
    a[id|="anchor"]:target ~ .panel-content {
        display: flex;

        width: 100%;
        background-color: var(--bg1);
        background-size: 100% 100%;
        z-index: auto;
    }

    @media (prefers-color-scheme: dark) {
        #panel-left-toggle:checked ~ .panel-content,
        #panel-right-toggle:checked ~ .panel-content,
        a[id|="anchor"]:target ~ .panel-content {
            background-image: url(../images/bg.png);
        }
    }
    @media (prefers-color-scheme: light) {
        #panel-left-toggle:checked ~ .panel-content,
        #panel-right-toggle:checked ~ .panel-content,
        a[id|="anchor"]:target ~ .panel-content {
            background-image: url(../images/bg-light.png);
        }
    }
}