body {
    font-family: "rubik";
}

.popover {
    z-index: 200;
    max-width: unset;
}

.prettify_spacing {
    letter-spacing: 1.5px;
}

.postThumbnail img {
    max-height: 96px
}

@media all and (max-width: 360px) {
    .postThumbnail img {
        max-height: 128px;
    }
}

@media all and (max-width: 360px) {
    .col-xs-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}

.sidebar_items a {
    color: #343a40;
    font-family: Roboto;
}

.sidebar li a:hover {
    background: #ecdeed;
    text-decoration: none;
}

.page-title {
    color: #45156C;
    font-family: Roboto;
    font-weight: 700 !important;
}


/*******************/
/*     MENUS      */
/******************/

.pixelpad_nav_menu #menu_dashboard {
    background: linear-gradient(136.38deg, #07A09C 0%, #06AAA2 100%);
    border-radius: 15px;
}

.pixelpad_nav_menu .nav-item {
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.3125rem;
    text-align: center;
    text-transform: uppercase;
    margin: 0 0.625rem;
    padding: 0 0.625rem;
}

.my_apps_card .play_edit_buttons a {
    color: white;
    padding: 0.25rem 0.25rem;
    background: #12cec6;
}


/********************/
/*   signup/login  */
/*******************/
.text-theme-color {
    color: #45156C;
}

#pixelpad_login_button, #pixelpad_signup_button, #pixelpad_signup_button_teacher {
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0.8rem 3.25rem;
    color: white;
    border: none;
    background: linear-gradient(136.38deg, #078AA0 0%, #06AAA2 100%);
    border-radius: 30px;
}

#switch_to_signup {
    background: #fff;
    white-space: nowrap;
    border-radius: 30px;
    padding: 1rem 2rem;
    border: 1px solid #0EC4BB;
    color: #0EC4BB;
    font-weight: 700;
}

#switch_to_teacher_signup {
    background: #fff;
    white-space: nowrap;
    border-radius: 30px;
    padding: 1rem 2rem;
    border: 1px solid #9112bd;
    color: #9112bd;
    font-weight: 700;
}

#switch_to_signup:hover, #switch_to_login:hover,
#pixelpad_login_button:hover, #pixelpad_signup_button:hover,
#create_a_new_app_button:hover, #switch_to_teacher_signup, .switch_to_login:hover,
#pixelpad_signup_button_teacher, #create_app_confirm_button, #settings_save:hover {
    cursor: pointer;
}

#switch_to_teacher_signup:hover {
    background: #9112bd;
    color: white;
}

#switch_to_signup:hover {
    background: #0EC4BB;
    color: white;
}

#login_username, #login_password, 
#signup_username, #signup_password, #signup_confirm_password,
#signup_school_name, #signup_username_teacher, #signup_password_teacher, #signup_confirm_password_teacher {
    border-radius: 25rem;
    padding: 0.5rem;
    padding-left: 1rem;
    width: 100%;
    border: 1px solid #959595;
    color: #343B42;
    outline: none;
    font-size: 1.1rem;
}

.sidebar-toggle:hover {
    cursor: pointer;
}

.no-account {
    border-top: 1px solid #dee2e6;
}

/********************/
/* sidebar          */
/********************/

.sidebar_items_wrapper {
    overflow: hidden;
}

.sidebar_items_wrapper:hover {
    overflow-y: auto;
    /*touchscreen hover used in pixelpad-course.js to toggle the class*/
}


/********************/
/* woocommerce      */
/********************/

#billing_email_field {
    float: left;
}

#customer_details {
    margin-bottom: 2rem;
}

.woocommerce .col-1, .woocommerce .col-2 {
    max-width: none;
}

#order_review_heading,
.page-template-woo-checkout .woocommerce-billing-fields h3 {
    display: none;
}

.bogo-votes.voted {
    color: #0EC4BB;
}


/********************/
/*     AI CHAT      */
/********************/

.message {
    max-width: 80%;
    border-radius: .75rem;
    display: block;
    padding: 1rem;
    margin-bottom: 1rem;
    word-wrap: break-word;
    clear: both;
    position: relative;
    padding-bottom: 10px;
    user-select: text;
}
.message p {
    margin-bottom: 0px;
}

.userMessage {
    background-color: #e2e2e6;
    margin-left: auto;
    width: fit-content;
}
.userMessage::after {
    right: 15px;
    filter: invert(99%) sepia(8%) saturate(1145%) hue-rotate(180deg) brightness(93%) contrast(94%);
}

.aiMessageContainer {
    display: flex;
}

.chatbotIcon {
    display: flex;
    width: 50px;
    height: 50px;
    justify-content: center;
    align-items: center;
    background-color: #45156c;
    border-radius: 50%;
    margin-right: 1em;
}

.assistantMessage {
    float: left;
    background-color: #cfaaee;
}
.assistantMessage::after {
    left: 15px;
    filter: invert(71%) sepia(78%) saturate(452%) hue-rotate(203deg) brightness(97%) contrast(93%);
}

.assistantMessage pre {
    background-color: #b796d2;
    border-radius: 5px;
    padding: 1rem;
    position: relative;
}

.errorMessage {
    float: left;
    background-color: #e66a6a;
}
.errorMessage::after {
    content: "";
}

.warnMessage {
    float: left;
    background-color: #e6b56b;
}
.warnMessage::after {
    content: "";
}

.dot {
    height: 0.7rem;
    width: 0.7rem;
    background-color: #d1d1d1;
    border-radius: 50%;
    display: inline-block;
    animation: bounce ease-in-out 0.4s infinite alternate;
    margin: 0 2px;
}
.dot:nth-child(2) {
    animation-delay: 0.12s;
}
.dot:nth-child(3) {
    animation-delay: 0.24s;
}

@keyframes bounce {
    from {
        transform: translateY(5px);
    }
    to {
        transform: translateY(-6px);
    }
}

.message .copy-button {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
}

.chat-feedback {
    font-size: 0.9rem;
    margin-left: calc(54px + 1em);
    margin-top: -10px;
}

.feedback-button {
    cursor: pointer;
    font-size: 1.1rem;
    color: #007bff;
}

.feedback-button#feedback-positive {
    margin: 0 0.5rem;
}

.feedback-button#feedback-negative i {
    transform: scaleX(-1);
}

#characterCount {
    position: relative;
    z-index: 1000;
}

#characterCount .remaining-text {
    position: absolute;
    bottom: 0.5rem;
    right: 2rem;
    background: white;
    border: 4px white solid;
    border-radius: 6px;
}


/********************/
/* miscellaneous    */
/********************/

.table-scroll {
    max-height: 60vh;
}

/* admin custom posts and editor */
#wp-content-editor-tools, #ed_toolbar, #post-status-info, .wp-heading-inline, .page-title-action, .update-nag {
    display: none !important;
}

.wp-editor-area {
    margin-top: 0 !important;
    border-bottom: 1px solid #e5e5e5;
}

#wp-content-wrap {
    padding-top: 0 !important;
}

#poststuff {
    margin-top: 2rem;
}

a:hover {
    text-decoration: none;
}

.show ul#menu-main {
    background: #45156c;
    padding: 1rem;
    border-radius: 0 0 1rem 1rem;
}

#spinoffSection:empty {
    display: none;
}

.completionBanner {
    height: 2rem;
    width: 180px;
    position: absolute;
    top: 48px;
    right: -6px;
    text-align: center;
    white-space: nowrap;
    -webkit-transform: rotate(35deg);
    -moz-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    -o-transform: rotate(35deg);
    transform: rotate(35deg);
}

.ui-draggable-dragging {
    pointer-events: none;
}

