/* ==== LAYOUT: GRID ==== */

.emn-fl-grid-container {
    margin-right: auto;
    margin-left: auto;
}

/* ==== LAYOUT: GENERAL ==== */

body[class*="flusso-ai"] {
    background-color: #f4f7fe;
}

.emn-fl-transitions-2s {
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.emn-fl-white-box {
    padding: 20px 26px;
    background-color: white;
    border-radius: 20px;
    margin-bottom: 22px;
}

.emn-fl-text-right {
    text-align: left;
}

.emn-fl-align-end {
    align-items: end;
}

.emn-fl-align-center {
    align-items: center;
}

.emn-fl-white-box > h3 {
    margin-top: 6px;
}

.emn-fl-grid-container.emn-fl-no-padding-left-right {
    padding-right: 0;
    padding-left: 0;
}

input[type=checkbox].emn-fl-checkbox {
    box-sizing: border-box;
    font-size: 1rem;
    line-height: 1.5;
    padding: 10px !important;
    border: 1px solid #ececec;
    outline: 0;
    border-radius: 4px;
    margin: 6px 5px;
    cursor: pointer;
    background-color: transparent;
    opacity: 0;
    position: absolute;
    z-index: 2;
}

.emn-fl-checkbox-control {
    position: relative;
    width: 28px;
    height: 28px;
    margin-left: 6px;
    margin-top: 2px;
    border-radius: 4px;
    border: 1px solid #d0d0d0;
    vertical-align: middle;
    float: right;
    background-color: inherit;
    cursor: pointer;
    margin-bottom: 4px;
}

.emn-fl-checkbox:checked + .emn-fl-checkbox-control:after {
    content: "";
    display: block;
    position: absolute;
    background-color: #422afb;
    top: 6px;
    right: 6px;
    width: 16px;
    height: 16px;
    border-radius: 3px;
}

.emn-fl-checkbox-control + label {
    padding-top: 3px;
    font-size: 16px;
}

.emn-fl-section-p-margin-top {
    margin-top: 16px !important;
}

.emn-fl-checkbox-control + p.emn-fl-form-field-desc {
    clear: both;
}

.emn-fl-checkbox-control {
    transform: scale(0.75);
}

.emn-fl-button, body[class*="flusso-ai"] .submit input[type="submit"] {
    background-color: #422afb;
    color: white;
    border: none;
    line-height: 1.2;
    border-radius: 16px;
    font-size: 1.2em;
    padding: 10px 26px;
    cursor: pointer;
    -webkit-transition: all .2s;
    -moz-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
}

.emn-fl-button.emn-fl-key-validate {
    background-color: #3a9f54;
    margin-right: 8px;
}

.emn-fl-button:not(.emn-fl-button-saved):hover, body[class*="flusso-ai"] .submit input[type="submit"]:hover {
    background-color: #3311db;
}

.emn-fl-button.emn-fl-key-validate:hover {
    background-color: #338a49;
}

.emn-fl-button-delete, .emn-fl-button-modal-goback {
    background-color: rgb(247, 4, 4);
}

.emn-fl-button.emn-fl-button-delete:hover, .emn-fl-button-modal-goback:hover {
    background-color: rgb(210, 4, 4) !important;
}

.emn-fl-wrap {
    position: relative;
}

.emn-fl-loading, .emn-fl-white-overlay {
    position: fixed;
    width: calc(100% - 160px);
    height: 100%;
    display: none;
    top: 0;
    right: 160px;
    border-radius: 24px;
    background-color: rgba(255, 255, 255, 0.7);
    z-index: 99;
}

.emn-fl-modal-overlay {
    right: 0;
    width: 100%;
}

.emn-fl-loading {
    z-index: 100;
}

@media screen and (max-width: 1200px) {
    .emn-fl-button.emn-fl-openai-key-validate {
        display: block;
        margin-right: 0;
        margin-top: 12px;
    }
}

@media screen and (max-width: 960px){
    .emn-fl-loading, .emn-fl-white-overlay {
        width: calc(100% - 36px);
        right: 36px;
    }
}

@media screen and (max-width: 782px){
    .emn-fl-loading, .emn-fl-white-overlay {
        width: 100%;
        right: 0;
    }
    
    body[class*="flusso-ai"] form th {
        margin-bottom: 6px;
    }

    td p.emn-fl-form-field-desc {
        margin-top: 8px;
    }

    .emn-fl-go-to-new-content.emn-fl-post-creation {
        margin-right: 0;
        display: table;
        margin-top: 16px;
    }
}

.emn-fl-loading.emn-fl-show {
    display: block;
}

.emn-fl-loading div {
    position: absolute;
    transform: translate(50%, -50%);
    top: 50%;
    right: 50%;
    text-align: center;
}

.emn-fl-loading div span {
    display: block;
}

.emn-fl-plugin-header-img-container img, .emn-fl-plugin-header-img-container h1 {
    display: inline-block;
}

.emn-fl-plugin-header-img-container img {
    width: 32px;
    margin-left: 8px;
    vertical-align: text-bottom;
}

.emn-fl-plugin-header-img-container + p {
    margin-top: 0;
}

#adminmenu a.toplevel_page_flusso-ai-generated-content .wp-menu-image.svg {
    background-size: 18px auto;
}

.emn-fl-dashicons {
    display: inline-block;
    margin-left: 8px;
}

.emn-fl-dashicons:before {
    width: 27px;
    height: 27px;
    font-size: 27px;
    vertical-align: bottom;
}

h2.emn-fl-title-outside {
    display: inline-block;
    font-size: 23px;
    margin: 8px 0 6px;
}

.emn-fl-media-button img {
    width: 18px;
    margin-left: 6px;
}

/* ==== MODAL (LARGE) ==== */

.emn-fl-l-modal {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9998;
    background-color: rgba(0, 0, 0, 0.6);
    opacity: 0;
    visibility: hidden;
}

.emn-fl-l-modal.emn-fl-show {
    opacity: 1;
    visibility: visible;
}

.emn-fl-l-modal-inner {
    width: 80%;
    position: absolute;
    transform: translate(50%, -50%);
    top: 35%;
    right: 50%;
    height: 80%;
    padding: 24px;
    overflow-y: scroll;
    background-color: #f4f7fe;
    border-radius: 22px;
}

.emn-fl-l-modal-inner .emn-fl-single-input {
    margin-bottom: 28px;
}

.emn-fl-l-modal-inner .emn-fl-loading {
    right: 0;
    top: 0;
    position: absolute;
    width: 100%;
}

.emn-fl-l-modal.emn-fl-show .emn-fl-l-modal-inner {
    top: 50%;
}

.emn-fl-l-modal-inner .emn-fl-top-title-small {
    margin-bottom: 12px;
}

.emn-fl-l-modal-inner .emn-fl-section-title-big {
    margin-bottom: 16px;
}

.emn-fl-l-modal-inner .emn-fl-white-box {
    padding: 26px;
}

.emn-fl-l-modal-inner label, .emn-fl-post-form label {
    cursor: default;
    font-weight: bold;
    font-size: 15px;
    margin-bottom: 4px;
    display: block;
}

.emn-fl-l-modal-inner label.emn-fl-required-label:after, .emn-fl-post-form label.emn-fl-required-label:after {
    content: '*';
    display: inline-block;
}

.emn-fl-l-modal-inner label + small, .emn-fl-post-form label + small {
    font-size: 12px;
    width: 95%;
    display: inline-block;
}

.emn-fl-l-modal-inner input[type="text"], .emn-fl-l-modal-inner input[type="number"], .emn-fl-l-modal-inner select, .emn-fl-post-form input[type="text"], .emn-fl-post-form input[type="number"], .emn-fl-post-form select {
    margin-top: 10px;
}

/* ==== POST FORM ==== */

.emn-fl-post-form {
    margin-top: 28px;
    padding-right: 0;
    padding-left: 0;
}

.emn-fl-post-form .emn-fl-cell {
    margin-bottom: 26px;
}

.emn-fl-post-form input[type="text"], .emn-fl-post-form input[type="number"] {
    background-color: #f4f7fe !important;
    border-radius: 14px !important;
    padding: 4px 12px !important;
    width: 90%;
    color: #2d3748 !important;
}

.emn-fl-post-form select {
    display: block;
}

.emn-fl-create-post-go {
    margin-top: 16px;
}

.emn-fl-go-to-new-content.emn-fl-post-creation {
    display: inline-block;
    margin-right: 23px;
    font-size: 16px;
    padding: 8px 20px;
}

.emn-fl-post-creator-result-container {
    display: none;
}

/* ==== META BOXES ==== */

.emn-fl-meta-logo {
    width: 22px;
    padding-right: 18px;
}

#emn_fl_meta_post_options, #emn_fl_meta_page_options, #emn_fl_meta_product_options {
    background: transparent;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    font-family: 'DM Sans';
    border: none;
}

.block-editor-page #emn_fl_meta_post_options, .block-editor-page #emn_fl_meta_page_options, .block-editor-page #emn_fl_meta_product_options {
    width: 90%;
}

#emn_fl_meta_post_options .inside, #emn_fl_meta_page_options .inside, #emn_fl_meta_product_options .inside {
    background-color: white;
}

#emn_fl_meta_post_options .postbox-header, #emn_fl_meta_page_options .postbox-header, #emn_fl_meta_product_options .postbox-header {
    border-radius: 10px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding: 8px 12px;
    background-color: #ffffff;
    color: white;
    border: 1px solid #cccccc60;
}

#emn_fl_meta_post_options p, #emn_fl_meta_page_options p, #emn_fl_meta_product_options p {
    font-size: 15px;
    font-weight: normal;
    color: #8a8a8a;
    margin-top: 6px;
}

p.emn-fl-no-margin-top {
    margin-top: 0 !important;
}

.emn_fl_post_meta_boxes > .inside > p, .emn_fl_post_meta_boxes > .inside > p, .emn_fl_post_meta_boxes > .inside > p {
    padding: 22px 0 16px;
}

#emn_fl_meta_post_options > .postbox-header + .inside, #emn_fl_meta_page_options > .postbox-header + .inside, #emn_fl_meta_product_options > .postbox-header + .inside {
    border-right: 1px solid #eeeeee;
    border-left: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
}

#poststuff #emn_fl_meta_post_options .postbox-header h2.hndle, #poststuff #emn_fl_meta_page_options .postbox-header h2.hndle, #poststuff #emn_fl_meta_product_options .postbox-header h2.hndle {
    font-size: 17px;
    color: #2d3748;
    padding-right: 12px;
}

#poststuff #emn_fl_meta_post_options .inside, #poststuff #emn_fl_meta_page_options .inside, #poststuff #emn_fl_meta_product_options .inside {
    margin-top: 0;
    padding-top: 6px;
}

#emn_fl_meta_post_options .toggle-indicator, #emn_fl_meta_page_options .toggle-indicator, #emn_fl_meta_product_options .toggle-indicator, #emn_fl_meta_post_options.postbox .handle-order-higher .order-higher-indicator::before, #emn_fl_meta_post_options.postbox .handle-order-lower .order-lower-indicator::before, #emn_fl_meta_page_options.postbox .handle-order-higher .order-higher-indicator::before, #emn_fl_meta_page_options.postbox .handle-order-lower .order-lower-indicator::before, #emn_fl_meta_product_options.postbox .handle-order-higher .order-higher-indicator::before, #emn_fl_meta_product_options.postbox .handle-order-lower .order-lower-indicator::before {
    color: #2d3748;
}

#emn_fl_meta_post_options table, #emn_fl_meta_page_options table, #emn_fl_meta_product_options table {
    width: 100%;
    border-collapse: collapse;
}

#emn_fl_meta_post_options table tr, #emn_fl_meta_page_options table tr, #emn_fl_meta_product_options table tr {
    border-top: 1px solid #eeeeee;
}

#emn_fl_meta_post_options table th, #emn_fl_meta_page_options table th, #emn_fl_meta_product_options table th, #emn_fl_meta_post_options table td, #emn_fl_meta_page_options table td, #emn_fl_meta_product_options table td {
    padding-top: 16px;
    padding-bottom: 16px;
}

#emn_fl_meta_post_options h4, #emn_fl_meta_page_options h4, #emn_fl_meta_product_options h4 {
    font-size: 16px;
    margin-bottom: 0;
}

#emn_fl_meta_post_options table th, #emn_fl_meta_page_options table th, #emn_fl_meta_product_options table th {
    width: 30%;
    text-align: right;
}

#emn_fl_meta_post_options table td, #emn_fl_meta_page_options table td, #emn_fl_meta_product_options table td {
    width: 70%;
    padding-right: 26px;
}

#emn-fl-key-points-editor {
    height: 220px;
}

/* ==== MODAL ==== */

#emn-fl-confirm-modal {
    position: fixed;
    z-index: 99;
    transform: translate(50%, -60%);
    top: 50%;
    right: 50%;
    width: 680px;
    max-width: 90%;
    border-radius: 24px;
    background-color: white;
    padding: 32px;
    box-shadow: rgb(112 144 176 / 20%) 0px 18px 40px;
    max-height: 50vh;
    overflow-y: scroll;
}

#emn-fl-confirm-modal svg {
    margin-right: auto;
    margin-left: auto;
    display: block;
    width: 46px;
    height: 46px;
}

#emn-fl-confirm-modal .emn-fl-medium-title {
    font-size: 2.2em;
}

#emn-fl-confirm-modal .emn-fl-section-p {
    margin-top: 26px;
}

#emn-fl-confirm-modal .emn-fl-grid-container {
    margin-top: 32px;
}

#emn-fl-confirm-modal button:not([id*='mce']):not(.insert-media):not([data-wp-editor-id="emn-fl-new-content-textarea"]) {
    padding: 14px 26px;
}

#emn-fl-confirm-modal button.emn-fl-button-post-type-modal {
    margin-bottom: 12px;
}

/* ==== POST LISTS ==== */

.emn-fl-post-list-container {
    border: 1px solid #e0e5f2;
    padding: 10px;
    border-radius: 16px;
    margin-bottom: 12px;
    display: none;
    padding: 16px 10px 6px;
    max-height: 250px;
    overflow-y: scroll;
}

.emn-fl-post-list-single {
    position: relative;
    text-align: right;
    font-size: 15px;
    margin-bottom: 10px;
    display: flex;
}

.emn-fl-post-list-no-results {
    padding: 10px;
}

.emn-fl-post-list-single input[type="checkbox"] {
    right: 0;
}

.emn-fl-post-list-single label {
    display: flex;
    padding-top: 7px;
}

.emn-fl-button-post-type-modal-loaded {
    cursor: default;
}

.emn-fl-post-list-search input {
    width: 80%;
    margin: 10px 0 20px;
    background-color: transparent !important;
}

.emn-fl-post-list-load-more {
    margin-bottom: 12px;
}

.emn-fl-modal-separator {
    padding-top: 30px;
    margin-top: 30px;
    border-top: 1px solid #cccccc30;
}

/* ==== ANIMATIONS ==== */

@-webkit-keyframes emn_fl_rotating {
    from{
        -webkit-transform: rotate(0deg);
    }
    to{
        -webkit-transform: rotate(-360deg);
    }
}

.emn-fl-rotating {
    -webkit-animation: emn_fl_rotating 2s linear infinite;
    animation: emn_fl_rotating 2s linear infinite;
    -moz-animation: emn_fl_rotating 2s linear infinite;
    -o-animation: emn_fl_rotating 2s linear infinite;;
}

/* ==== FONTS ==== */

.emn-fl-dm-sans, .emn-fl-wrap, .emn-fl-wrap ol li, .emn-fl-l-modal-inner * {
    font-family: 'DM Sans', sans-serif;
}

.emn-fl-section-title-big {
    font-size: 34px !important;
    font-weight: 800 !important;
    outline: transparent solid 2px;
    margin-top: 2px !important;
    outline-offset: 2px;
    color: #2d3748;
    padding-top: 4px !important;
}

.emn-fl-text-center {
    text-align: center;
}

.emn-fl-warning {
    font-weight: bold !important;
    color: #f61717 !important;
    margin-bottom: 0;
}

.emn-fl-top-title-small {
    font-size: 0.875rem;
    outline: transparent solid 2px;
    outline-offset: 2px;
    color: #2d3748;
    font-weight: 400;
    margin-bottom: 0;
}

.emn-fl-section-p, .emn-fl-section-p + ol li, .emn-fl-section-p + ul li {
    color: #a0aec0;
    font-weight: 500;
    font-size: 16px;
    margin-top: 4px;
}

.emn-fl-section-p + ol, .emn-fl-section-p + ul {
    margin-right: 0;
    list-style-position: inside;
}

.emn-fl-section-p + ol li, .emn-fl-section-p + ul li {
    margin-bottom: 12px;
    line-height: 24px;
}

.emn-fl-section-p + ol li:last-child, .emn-fl-section-p + ul li:last-child {
    margin-bottom: 0;
}

.emn-fl-medium-title {
    font-size: 1.5em;
    color: #2d3748;
    margin-bottom: 8px;
}

.emn-fl-medium-title-small { 
    font-size: 14px;
    margin-top: 24px;
    margin-bottom: 24px;
}

.emn-fl-medium-title-small svg {
    width: 16px;
    height: 16px;
}

.emn-fl-feather {
    margin-left: 6px;
    vertical-align: sub;
}

.emn-fl-empty-message {
    position: absolute;
    transform: translate(50%, -50%);
    top: 60%;
    right: 50%;
    width: 80%;
    text-align: center;
}

label.emn-fl-dm-sans {
    font-weight: 500;
    font-size: 1.2em;
    color: #1b2559;
    margin-bottom: 8px;
}

/* ==== OVERVIEW ==== */

.emn-fl-whats-new-element {
    cursor: pointer;
    margin-right: 8px;
}

.emn-fl-whats-new-element svg {
    width: 18px;
    height: 18px;
    vertical-align: middle;
    margin-left: 4px;
}

.emn-fl-overview-buttons-container {
    margin-top: 18px;
}

.emn-fl-overview-buttons-container .emn-fl-cell {
    text-align: center;
}

.emn-fl-overview-buttons-container .emn-fl-button {
    padding-top: 26px;
    padding-bottom: 26px;
    display: block;
    font-weight: bold;
    font-size: 18px;
    text-decoration: none;
}

.emn-fl-overview-buttons-container .emn-fl-button[href*="mailto:"], .emn-fl-overview-buttons-container .emn-fl-button[href="https://emana.design/docs/flusso-ai"], .emn-fl-overview-buttons-container .emn-fl-button[href*="ko-fi"] {
    display: inline-block;
    font-size: 16px;
    font-weight: normal;
    padding-top: 16px;
    padding-bottom: 16px;
}

.emn-fl-overview-buttons-container .emn-fl-button[href*="mailto:"] svg, .emn-fl-overview-buttons-container .emn-fl-button[href="https://emana.design/docs/flusso-ai"] svg, .emn-fl-overview-buttons-container .emn-fl-button[href*="ko-fi"] svg {
    vertical-align: middle;
    width: 20px;
    height: 20px;
}

.emn-fl-overview-buttons-container .emn-fl-button + p {
    margin-top: 18px;
}

.emn-fl-overview-buttons-container .emn-fl-button:hover, .emn-fl-overview-buttons-container .emn-fl-button:active, .emn-fl-overview-buttons-container .emn-fl-button:focus {
    color: white;
}

.emn-fl-overview-buttons-container .emn-fl-button svg {
    vertical-align: sub;
    margin-left: 8px;
}

.emn-fl-overview-table {
    margin-top: 32px;
    margin-bottom: 22px;
    border: 1px solid #e0e5f2;
    border-radius: 12px;
    padding-right: 16px;
    padding-left: 16px;
}

.emn-fl-overview-table-labels {
    margin-bottom: 18px;
}

.emn-fl-overview-table-element {
    border-top: 1px solid #e0e5f2;
    padding-top: 22px;
    padding-bottom: 22px;
}

.emn-fl-overview-table-element p {
    font-size: 14px;
}

.emn-fl-overview-table-element svg {
    vertical-align: middle;
    margin-left: 8px;
}

.emn-fl-overview-table-single-filter {
    display: inline-block;
    margin-left: 6px;
    font-size: 12px;
    border-radius: 8px;
    padding: 10px 20px;
    border: 1px solid #422afb;
}

.emn-fl-overview-table-single-filter[data-selected="false"] {
    background-color: white;
    color: #422afb;
}

.emn-fl-overview-table-single-filter[data-selected="false"]:hover {
    color: white;
}

.emn-fl-overview-table-element-mobile-label {
    display: none;
}

.emn-fl-is-new-element {
    position: relative;
}

.emn-fl-is-new-element:after {
    content: "NEW!";
    position: absolute;
    display: block;
    color: #422afb;
    border: 1px solid;
    border-radius: 4px;
    padding: 2px 5px;
    font-size: 11px;
    left: 1px;
    top: -34px;
}

@media screen and (max-width: 1024px){
    .emn-fl-overview-table-single-filter {
        margin-bottom: 12px;
    }

    .emn-fl-overview-table-labels {
        display: none;
    }

    .emn-fl-overview-table-element p {
        display: inline-block;
        font-weight: 500;
        font-size: 13px;
    }

    .emn-fl-overview-table-element h3 svg {
        width: 22px;
        height: 22px;
        margin-left: 4px;
    }

    .emn-fl-overview-table-element-mobile-label {
        display: block;
        font-weight: bold;
    }

    .emn-fl-is-new-element {
        padding-left: 60px;
    }

    .emn-fl-is-new-element:after {
        top: 0;
    }
}

/* ==== SETTINGS FIELDS ==== */

.emn-fl-settings-form input[type="password"], .emn-fl-settings-form input[type="text"]:not(.emn-fl-color-picker), #emn-fl-chat-prompt {
    border-radius: 16px;
    padding: 6px 10px;
    border: 1px solid #e0e5f2;
    width: 400px;
    max-width: 90%;
}

.emn-fl-settings-form select {
    width: 200px;
    max-width: 100%;
    border-radius: 16px;
    padding: 6px 10px;
    border: 1px solid #e0e5f2;  
}

body[class*="flusso-ai"] p.submit {
    padding-bottom: 0;
}

.emn-fl-form-single-input {
    margin-bottom: 18px;
}

td p.emn-fl-form-field-desc {
    font-size: 12px;
}

.emn-fl-textarea-prompt {
    width: calc(100% - 26px);
    resize: none;
    border-radius: 12px;
    padding: 16px;
    font-size: 18px;
    height: 150px;
    border-color: #e0e5f2;
    border-style: dashed;
    background-color: #f0f5fa;
    color: rgb(143, 155, 186);
    margin-bottom: 8px;
}

.emn-fl-textarea-prompt::placeholder {
    color: rgba(143, 155, 186, 0.5);
}

.emn-fl-generator-settings-form label, .emn-fl-settings label {
    display: block;
    font-weight: bold;
}

.emn-fl-input, .emn-fl-select {
    background-color: #f4f7fe !important;
    border-radius: 14px !important;
    padding: 4px 12px !important;
    width: 90%;
    color: #2d3748 !important;
}

/* ==== IMAGE GENERATION ==== */

.emn-generated-images-container {
    min-height: 250px;
    position: relative;
}

.emn-fl-generated-image-container {
    margin-right: auto;
    margin-left: auto;
    padding: 30px;
    margin-bottom: 32px;
    display: inline-flex;
    padding-top: 32px;
    border-radius: 24px;
    box-shadow: rgb(112 144 176 / 12%) 0px 18px 40px;
}

.emn-fl-generated-image, .emn-fl-image-variation-of {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 18px;
    position: relative;
    width: 44%;
    display: inline-block;
    height: 460px;
}

.emn-fl-generated-image-external-link {
    position: absolute;
    top: 10px;
    left: 10px;
    font-size: 12px;
    text-decoration: none;
    color: white;
    text-transform: uppercase;
    background-color: #422afb;
    border-radius: 6px;
    padding: 6px 12px;
    border: 1px solid #422afb;
}

.emn-fl-generated-image-external-link svg {
    width: 16px;
    height: 16px;
    vertical-align: sub;
    margin-left: 8px;
}

.emn-fl-generated-image-external-link:hover, .emn-fl-generated-image-external-link:active, .emn-fl-generated-image-external-link:focus {
    background-color: white;
    color: #422afb;
}

.emn-fl-single-image-variation {
    border: 1px solid #ccc;
    border-style: dashed;
}

.emn-fl-image-variation-of {
    width: 110px;
    height: 110px;
}

.emn-fl-generated-image-actions h3 svg {
    vertical-align: sub;
    margin-left: 6px;
}

.emn-fl-generated-image-actions button {
    font-size: 16px;
    display: block;
    margin-bottom: 14px;
    border-radius: 12px;
    font-weight: 500;
}

.emn-fl-generated-image-actions button svg, .emn-fl-save-all-images-in-media svg, button svg {
    vertical-align: text-top;
    margin-left: 8px;
    width: 20px;
    height: 20px;
}

.emn-fl-save-all-images-in-media {
    margin-bottom: 8px;
}

.emn-fl-button-saved {
    background-color: #007e00;
    cursor: default;
}

/* ==== TEXT/CHAT GENERATION ==== */

#emn-fl-chat-content-container {
    height: 420px;
    margin-bottom: 18px;
    width: calc(100% - 8px);
    padding: 0;
}

#emn-fl-chat-prompt {
    width: 100%;
    max-width: 100%;
    margin-bottom: 18px;
    background-color: #f0f5fa;
    height: 50px;
    font-size: 16px;
    padding: 10px 16px;
}

#emn-fl-chat-prompt.emn-fl-can-add-img {
    padding-left: 38px;
}

#emn-fl-chat-prompt::placeholder {
    color: rgba(143, 155, 186, 0.5);
}

.emn-fl-form-field-chat-prompt-container {
    position: relative;
}

#emn-fl-chat-add-img, #emn-fl-chat-remove-img {
    position: absolute;
    left: 10px;
    top: 12px;
    cursor: pointer;
    color: #9ea0a5;
}

.emn-fl-form-field-chat-prompt-container svg.emn-fl-hidden {
    opacity: 0;
    visibility: hidden;
}

.emn-fl-chat-content-container-inner {
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    position: relative;
}

button.emn-fl-new-chat {
    background-color: #67b5ae;
}

button.emn-fl-new-chat:hover {
    background-color: #53948e !important;
}

.emn-fl-button + small {
    display: block;
    font-size: 12px;
    font-style: italic;
    margin-top: 6px;
    margin-right: 12px;
}

.emn-fl-button.emn-fl-new-chat + small {
    margin-right: 0;
    margin-left: 12px;
}

.emn-fl-new-chat-container[data-visibility="0"], .emn-fl-chat___select_all[data-visibility="0"] {
    opacity: 0;
    visibility: hidden;
}

.emn-fl-chat___element {
    padding: 10px 20px;
}

.emn-fl-chat___start {
    padding: 10px 20px;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: bold;
    border-bottom: 1px solid #e0e5f2;
}

.emn-fl-chat___select_all {
    position: absolute;
    top: 7px;
    left: 13px;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: bold;
    border: 1px solid;
    padding: 2px 8px;
    cursor: pointer;
}

.emn-fl-chat___select_all:hover {
    background-color: rgb(143, 155, 186);
    color: #f0f5fa;
}

.emn-fl-chat___message {
    padding: 8px 20px 20px;
    padding-right: 64px;
    position: relative;
}

.emn-fl-chat___message_text {
    min-height: 40px;
    padding-left: 62px;
}

.emn-fl-chat___message_select {
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    left: 30px;
}

@media screen and (max-width: 800px){
    .emn-fl-chat___message_select {
        left: 20px;
    }

    .emn-fl-chat___message_text {
        padding-left: 42px;
    }
}

#emn-fl-chat-content-hidden {
    opacity: 0;
    height: 1px;
    width: 1px;
    overflow: scroll;
    position: absolute;
    top: 0;
    z-index: -1;
}

.emn-fl-chat-check-message + .emn-fl-checkbox-control {
    border: 1px solid rgb(143, 155, 186);
}

.emn-fl-chat-message___signature {
    position: absolute;
    right: 18px;
    top: 26px;
    width: 30px;
    height: 24px;
    color: white;
    font-size: 11px;
    text-transform: uppercase;
    text-align: center;
    padding-top: 6px;
}

.emn-fl-chat___message p {
    font-size: 16px;
    line-height: 28px;
}

.emn-fl-chat___message p:last-child {
    margin-bottom: 0;
}

.emn-fl-chat___message[data-sender="assistant"]{
    background-color: #dae1e7f5;
}

.emn-fl-chat___message[data-sender="assistant"] .emn-fl-chat-message___signature {
    background-color: #6877bf;
}

.emn-fl-chat___message[data-sender="system"] .emn-fl-chat-message___signature, .emn-fl-chat___message[data-sender="user"] .emn-fl-chat-message___signature {
    background-color: #67b5ae;
}

.emn-fl-chat-options div {
    margin-bottom: 28px;
}

#emn-fl-new-content-textarea {
    width: 100%;
}

#wp-emn-fl-new-content-textarea-wrap .mce-btn.mce-active i {
    color: black;
}

.emn-fl-new-content-select-post-type option[value="product"], .emn-fl-new-content-select-post-type option[value="portfolio"] {
    display: none;
}

.emn-fl-go-to-new-content {
    display: table;
    margin-right: auto;
    margin-left: auto;
    font-size: 18px;
    text-decoration: none;
    color: white;
    background-color: #42BA96;
    border: 1px solid #42BA96;
    padding: 12px 20px;
    border-radius: 16px;
}

.emn-fl-go-to-new-content svg {
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-right: 6px;
}

.emn-fl-go-to-new-content:hover, .emn-fl-go-to-new-content:active, .emn-fl-go-to-new-content:focus {
    background-color: white;
    color: #42BA96;
}

/* ==== COMMENTS SENTIMENT ==== */

.emn-fl-sentiment-value-container {
    /*background-image: url(../images/spin.gif);
    background-repeat: no-repeat;
    background-size: 18px;
    background-position: left center;*/
}

.emn-fl-sentiment-value {
    
}

/* ==== SPEECH TO TEXT ==== */

.emn-fl-selected-filename {
    margin-bottom: 12px;
    display: block;
    font-size: 14px;
}

.emn-fl-selected-filename svg {
    width: 16px;
    height: 16px;
    margin-left: 8px;
    vertical-align: middle;
}

.emn-fl-send-audio-file {
    margin-top: 18px;
}

.emn-fl-transition-container p {
    font-size: 16px;
    line-height: 28px;
    padding: 0 22px;
}

#emn_fl_audio_translation_language {
    width: 300px;
    max-width: 100%;
}

@media screen and (max-width: 1318px){
    .emn-fl-send-audio-file-translate {
        margin-top: 12px;
    }
}

/* ==== BLOCKS ==== */

.emn-fl-block-is-busy {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 8px;
    background-image: url(../images/spin.gif);
    background-repeat: no-repeat;
    background-size: 18px;
    background-position: center center;
}

.emn-fl-block-icon-loading {
    background-image: url(../images/spin.gif);
    background-repeat: no-repeat;
    background-size: 18px;
    background-position: center center;
}

.emn-fl-block-icon-loading g {
    opacity: 0;
}

.emn-fl-block-icon {
    fill: none !important;
    height: 20px !important;
    width: 20px !important;
}

.components-popover__content .components-dropdown-menu__menu-item:hover svg.emn-fl-block-icon .emn-fl-stroke-element-hover {
    stroke: currentColor !important;
}

.components-popover__content .components-dropdown-menu__menu-item:hover svg.emn-fl-block-icon .emn-fl-fill-element-hover {
    fill: currentColor !important;
}

label[for="emn_fl_audio_translation_language"]{
    display: block;
    margin-bottom: 6px;
    font-weight: bold;
}

/* ==== ALERTS ==== */

.emn-fl-alert {
    width: 1140px;
    max-width: 1140px;
    bottom: -100px;
    right: 50%;
    transform: translateX(50%);
    position: fixed;
    padding: 26px 34px;
    color: #fefefe;
    border-radius: 8px;
    font-size: 18px;
    z-index: 9999;
    -moz-transition: all, 0.2s;
    -o-transition: all, 0.2s;
    -webkit-transition: all, 0.2s;
    transition: all, 0.2s;
    z-index: 9999;
}

.emn-fl-alert .emn-fl-alert-message {
    padding-left: 35px;
    display: inline-block;
}
  
.emn-fl-alert-active {
    bottom: 40px;
}

.emn-fl-alert-general {
    background-color: #506EFA;
}

.emn-fl-alert-success {
    background-color: #42BA96;
}

.emn-fl-alert-warning {
    background-color: #DF4759;
}

@media screen and (max-width: 1200px) {
    .emn-fl-alert {
        width: 90%;
        max-width: 90%;
    }
}

/* ==== LAYOUT: DELETE PAGE ==== */

.emn-fl-delete-button-container {
    border-bottom: 1px solid #e0e0e050;
    padding-bottom: 22px;
    padding-top: 22px;
}

.emn-fl-delete-button-container:first-child {
    padding-top: 0;
}

.emn-fl-delete-button-container button svg {
    vertical-align: sub;
    margin-left: 6px;
    height: 20px;
    width: 20px;
}

.emn-fl-delete-button-container button + p {
    margin-top: 12px;
    margin-bottom: 0;
}

/* ==== MISC ==== */

.emn-fl-remember {
    color: #a0aec0;
    text-align: center;
    margin-top: 12px;
    line-height: 24px;
}

.emn-fl-remember-writer {
    margin-bottom: 28px;
    padding: 13px;
    border: 2px dotted #422afb;
    border-radius: 12px;
    color: #422afb;
    font-size: 13px;
    line-height: 28px;
}