@import url('https://fonts.googleapis.com/css2?family=Comic+Relief:wght@400;700&family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');
:root {
    --main-color: #353535;
    --bg-color: #151515;
    --bg-color-2: #252525;
    --color: white;
    --title-color: var(--color);
    --font-family: Arial;

    --trans-smooth: cubic-bezier(0.22, 1, 0.36, 1);
}

#geekieIframe {
    z-index: 0;

    position: fixed;
    top: 0px;
    right: 0px;

    width: 100%;
    height: 100%;

    border: none;
    transition: 0.3s var(--trans-smooth) width;
}
#frontImage {
    z-index: 1;

    position: fixed;
    top: 0px;
    left: 0px;

    width: 100%;
    height: 100%;

    opacity: 0%;
    pointer-events: none;
}

#plusButton {
    z-index: 10;

    position: fixed;
    bottom: 0px;
    left: 0px;

    width: 25px;
    height: 25px;

    background: var(--bg-color);
    color: var(--title-color);
    border: none;
    border-radius: 0px 7.5px 0px 0px;
    opacity: 100%;
    cursor: default;
    transition: 0.3s var(--trans-smooth);

    /* align plus icon in the middle */
    display: flex;
    justify-content: center;
    align-items: center;
}
#plusPanel {
    z-index: 10;
    
    position: fixed;
    top: 0px;
    left: -435px;

    width: 435px;
    height: 100%;

    background: var(--bg-color);
    background-size: cover;
    background-position: center;
    border: none;
    transition: 0.3s var(--trans-smooth);

    display: flex;
}
#pageButtons {
    position: absolute;
    top: 0px;
    left: 0px;

    width: 35px;
    height: 100%;

    overflow-y: auto;
    overflow-x: hidden;
    background: var(--bg-color-2);
}
#pageButtons button {
    width: 100%;
    aspect-ratio: 1.0;

    background: transparent;
    color: var(--color);
    border: none;
    cursor: pointer;
    transition: 0.2s var(--trans-smooth);

    /* align icons in the middle */
    display: flex;
    justify-content: center;
    align-items: center;
}
#pageButtons button:hover {
    transform: scale(1.1);
    margin: 2px 0px;
    background: rgba(255, 255, 255, 0.2);
}
#pageButtons hr {
    margin: 3px 0px;
    border: solid 1px rgba(255, 255, 255, 0.05);
}
#pages {
    position: absolute;
    top: 0px;
    right: 0px;

    width: calc(100% - 35px);
    height: 100%;

    overflow-x: hidden;
    overflow-y: auto;

    display: flex;
    flex-direction: column;
}
#pages div {
    display: none;
}
#pages h1, #pages h2 {
    width: 100%;

    color: var(--title-color);
    font-family: var(--font-family);
    text-align: center;
}
#pages h1 {
    font-size: 25px;
    margin: 15px 0px;
}
#pages h2 {
    font-size: 21px;
    margin: 10px 0px;
}
#pages p {
    color: var(--title-color);
    font-family: var(--font-family);

    margin: 0px 5px;
    font-size: 15px;
}
#pages hr {
    border: solid 1px rgba(255, 255, 255, 0.1);
}

/* GRID BUTTONS */
#plusPanel .gridButtons {
    width: 390px;

    margin: 0px 5px;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}
#plusPanel .gridButtons button {
    width: 126.66666666px;
    height: 60px;

    background: var(--bg-color-2);
    color: var(--color);
    font-family: var(--font-family);
    font-size: 15px;
    cursor: pointer;
    border: none;
    border-radius: 10px;
    transition: 0.2s var(--trans-smooth);
    
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}
#plusPanel .gridButtons button:hover {
    background: #353535;
    transform: scale(1.025);
}
#plusPanel .gridButtons button:active {
    transition: 0s;
}
#plusPanel .gridButtons button .icon {
    width: 20px;
    height: 20px;

    user-select: none;
    margin-right: 4px;
}


/* DISABLED BUTTON */
#plusPanel button:disabled {
    display: none;
    opacity: 50%;
    filter: grayscale(100%);
    order: 99999;
    cursor: not-allowed !important;
}
#plusPanel button:disabled::after {
    content: "🔒";
    margin-left: 1px;
}