﻿.item-inner {
    position: relative;
}

.blockoverlay {
    background: #ffffffa3;
    position: absolute;
    bottom: 0;
    padding-right: 3px;
}

    .blockoverlay .btnremb {
        border: 0;
        color: #17182d;
        padding: 5px 5px;
        font-size: 15px;
    }

.nojewel {
    font-size: 17px;
    margin-top: 20px;
    line-height: 1.4;
    color: #ff4d4d;
}

a.clearcht {
    background: #212340;
    padding: 4px 10px;
    border-radius: 4px;
    margin-top: 10px;
}

.dnote {
    color: red;
    font-size: 13px;
    margin: 5px 0;
}

.iconlegendPanelBtn {
    background: none;
    border: 0;
    display: flex;
    align-items: center;
    float: right;
}

    .iconlegendPanelBtn i {
        padding-left: 5px;
        color: #000;
        font-size: 25px;
        line-height: 1;
    }

.iconlegend {
    float: right;
}

    .iconlegend.panel {
        position: fixed;
        top: 0;
        right: -380px; /* Start off-screen */
        width: 380px;
        height: 100%;
        background-color: #f8f9fa;
        box-shadow: -2px 0 5px rgba(0, 0, 0, 0.2);
        transition: right 0.3s ease; /* Smooth slide effect */
        z-index: 1000;
        overflow-y: scroll;
    }

    .iconlegend .panel-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 10px 10px 0px 24px;
        background-color: #8587af;
        color: #fff;
    }

        .iconlegend .panel-header h5 {
            font-size: 18px;
        }

    .iconlegend .close-btn {
        background: none;
        border: none;
        font-size: 24px;
        color: white;
        cursor: pointer;
        position: relative;
        top: -3px;
    }

    .iconlegend .panel-content {
        padding: 10px 0 10px;
        overflow-y: auto;
    }

    .iconlegend.panel.open {
        right: 0; /* Bring panel into view */
    }

ul.iconlist {
    list-style: none;
    padding-left: 20px;
}

    ul.iconlist li {
        border-bottom: 1px solid #eee;
        margin-bottom: 5px;
        padding-top: 5px;
    }

h4.iconheader {
    font-size: 15px;
    line-height: 1;
    margin-bottom: 10px;
}

span.legendicon {
    font-size: 16px;
    line-height: 0;
    padding-right: 5px;
}

p.icondesc {
    font-size: 13px;
    color: #5a5a5a;
}

.btndownload.loadingBtn {
    margin: 0 15px;
}

button#downloadingBtn1 {
    left: 16px;
    top: -8px;
}

.blockdel .btndel {
    margin-left: 5px;
}

.max280 {
    max-width: 280px;
}

.newchat, .newchat:hover {
    color: #000;
    font-size: 25px;
    float: right;
    line-height: 1;
    padding-left: 10px;
    display: flex;
    align-items: center;
}

    .newchat span {
        text-align: center;
        font-size: 15px;
        padding-left: 5px;
    }

.block-ci-form.minpght {
    min-height: 300px;
}

.minpght-prompt {
    min-height: 300px;
    position: relative;
}

.aiprompt {
    margin: 10px 10px 20px;
    padding: 10px 15px;
    background: #eee;
    font-size: 15px;
}

.imageblock {
    padding-left: 12px;
}

.mainpanel {
    border: 1px solid #eee;
}

.readmore {
    display: inline-block;
    align-items: center;
    text-align: left;
}

.readmore-content {
    display: inline;
}

.read-more-link {
    color: #000;
    text-decoration: underline !important;
    cursor: pointer;
    margin-bottom: 15px;
    margin-left: 10px;
    font-weight: 600;
}

    .read-more-link:focus {
        outline: none;
        text-decoration: none; /* Remove underline on focus, if desired */
    }

    .read-more-link:hover {
        color: #0056b3; /* Change color on hover */
    }

    .read-more-link.read-more-less {
        padding: 0;
        margin: 0;
        background: no-repeat;
        border: 0;
    }

.copytxt {
    color: red;
}

.typewriter {
    overflow: hidden; /* Ensures no overflow is visible */
    border-right: 0.15em solid #333; /* Optional: A blinking cursor */
    white-space: nowrap; /* Keeps the text on a single line */
    animation: typing 4s steps(67, end) infinite, blink-caret 0.75s step-end infinite; /* Repeat typing infinitely */
    color: red;
    font-size: 16px;
    width: 0;
    display: inline-block;
}

@keyframes typing {
    from {
        width: 0;
    }
    /*to {
        width: 100%;
    }*/

    to {
        width: 62ch; /* Adjust this number to match the length of your text */
    }
}

/* Keyframes for the blinking caret effect */
@keyframes blink-caret {
    from, to {
        border-color: transparent;
    }

    50% {
        border-color: #333;
    }
}

/* Keyframes for the light blinking effect */
@keyframes blink-text {
    0%, 100% {
        color: #cc0000; /* Dark red */
    }

    50% {
        color: #ff4d4d; /* Light red */
    }
}

.nav-tabs .nav-link {
    color: #212340;
}

.aiheader {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 0;
}

.ogheader {
    margin-top: 15px;
}

    .ogheader h3 {
        font-size: 20px;
        font-weight: 600;
    }

    .ogheader p {
        border: 1px solid #eee;
        padding: 10px;
        background: #eee;
        cursor: not-allowed;
    }

.txtboxprompt {
    position: relative;
    overflow: hidden;
    width: 100%;
    resize: none;
    outline: 0 !important;
    min-height: 50px !important;
    padding-right: 40px !important;
    background: rgb(242 242 242) !important;
    border: 2px solid rgb(242 242 242) !important;
}

    .txtboxprompt:focus {
        border-bottom: 2px solid #17182d !important;
        outline: 0 !important;
        box-shadow: none !important;
    }

.btnInsideTextbox, .btnInsideTextbox:hover {
    position: absolute;
    right: 10px;
    top: 8%;
    transform: translateY(-0%);
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 5px;
    z-index: 1;
    font-size: 20px;
    color: #9e9e9e;
}

    .btnInsideTextbox .spinner {
        left: auto;
        right: 0%;
    }

    .btnInsideTextbox.disabled {
        color: #9e9e9e !important;
        cursor: not-allowed !important;
    }

.spinner {
    border: 4px solid rgb(32 35 63);
    border-left-color: #787bbf;
}


.btndownload, .btndownload:hover {
    font-size: 25px;
    border: 0;
    color: #17182d;
    background: none;
    padding: 5px;
    line-height: 1;
    width: auto;
}

.aiimage {
    margin: 2pc 0 0;
}

    .aiimage h4 {
        font-size: 20px;
        font-weight: 600;
    }

.col-40 {
    width: 400px;
}

/* Ensure the TextBox has padding to make room for the button */
.form-control {
    padding-right: 40px; /* Space for the button inside the textbox */
}

.blockdel {
    padding: 15px 0 2px;
}

.ptype {
    position: absolute;
    color: #fff;
    font-size: 19px;
    top: 10px;
    right: 10px;
    background: #00000066;
    padding: 5px 5px;
    line-height: 1;
}

.olderimages {
    margin-top: 20px;
    border-top: 1px solid #eee;
    padding-top: 20px;
}

    .olderimages h3 {
        font-size: 21px;
        margin-bottom: 15px;
        color: #000;
        font-weight: 600;
    }

    .olderimages .questions {
        margin-top: 30px;
    }

.btndel {
    color: red;
}

.right-buttons {
    display: flex;
    align-items: center;
}

.like-dsilike {
    border-left: 1px solid #eee;
}

.questions {
    padding: 5px 10px 5px;
    border-top: 1px solid #eee;
}

    .questions h4 {
        font-size: 19px;
        margin-bottom: 15px;
        color: #000;
        font-weight: 600;
    }

.feedbackmsg {
    margin-top: 0px;
    font-size: 12px;
    color: #17182d;
    font-weight: 500;
    text-align: center;
    background: #17182d26;
}

.block-ci {
    display: flex;
    flex-wrap: wrap;
    padding: 0px 0px 0px;
    position: relative;
    margin: 0;
}

.ci-left-panel {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    background-color: #fbfbfb;
    overflow-y: auto;
    z-index: 1;
    box-shadow: 3px 0 5px rgba(0, 0, 0, 0.2);
    border-bottom: 0;
    border-top: 0;
    overflow-x: hidden;
}

.ci-right-panel {
    padding: 1pc 1pc;
    flex: 1;
    overflow-y: auto;
}

.block-ci-header {
    text-align: left;
    margin: 0px 0 10px;
}

.overflow-x {
    overflow-x: hidden;
}

.keyphrases {
    margin-top: 15px;
}

    .keyphrases .control-label {
        margin-bottom: 10px;
    }

.ds-flex {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
}

.right-panel {
    position: relative;
    display: flex;
    flex-direction: column;
}

.cadmessage {
    position: sticky;
    top: 0;
    background-color: #f8f9fa;
    padding: 20px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 0;
    left: 0;
    width: 100%;
}

    .cadmessage span {
        color: red;
        display: block;
        margin-top: 10px;
        margin-bottom: 10px;
    }

.sliderarea {
    padding-top: 0pc;
    padding-bottom: 2pc;
}

.item-gallery {
    margin: 0 0px 15px;
    border: 1px solid #cecece;
    position: relative;
}

.form-check.form-switch {
    display: flex;
    align-items: center;
    padding: 0;
    margin-bottom: 0px;
}

    .form-check.form-switch .form-check-label {
        margin-right: 10px;
    }

    .form-check.form-switch .form-check-input {
        width: 51px;
        height: 25px;
        background-color: #212340;
        border-color: #212340;
        position: relative;
        top: -5px;
        right: 8px;
    }

/* Slider for toggle switch */
.toggle-slider {
    position: absolute;
    width: 93px;
    height: 35px;
    background-color: #2123402e;
    border-radius: 30px;
    transition: left 0.3s;
    left: 5px;
    z-index: 1;
    top: 3px;
}

/* Container for the custom toggle switch */
.toggle-container {
    position: relative;
    width: 470px;
    height: 41px;
    background-color: #e7e9eb;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 5px;
}

    /* Option positioning */
    .toggle-container[data-value="original"] .toggle-slider {
        left: 5px;
    }

    .toggle-container[data-value="simple-design"] .toggle-slider {
        left: calc(50% - 128px);
        width: 85px;
    }

    .toggle-container[data-value="briefly-enhanced"] .toggle-slider {
        left: calc(50% - 37px);
        width: 130px;
    }

    .toggle-container[data-value="detailed"] .toggle-slider {
        left: calc(100% - 144px);
        width: 141px;
    }

/* Individual labels inside the toggle */
.toggle-label {
    color: #000;
    font-size: 14px;
    cursor: pointer;
    z-index: 2;
    position: relative;
}

    .toggle-label i {
        padding-right: 4px;
        position: relative;
        top: 0px;
        line-height: 1;
    }

.ptype-icon {
    padding-right: 5px;
}

/*Upload Image*/

.tooltip-message {
    font-size: 13px;
    color: #888;
    margin-top: 10px;
}

.dnote.imgnote {
    background: #eee;
    padding: 10px 30px;
    display: block;
    font-size: 15px;
}

.tooltip-message {
    opacity: 0;
    position: absolute;
    bottom: -30px;
    left: 0;
    background-color: #333;
    color: white;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 100;
}

    .tooltip-message.show {
        opacity: 1;
        animation: fadein 0.3s ease-in-out;
    }

.upload-container {
    border: 2px dashed #ccc;
    border-radius: 0;
    padding: 20px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s, border-color 0.3s;
    position: relative;
    width: 100%;
    bottom: 0;
    margin-top: 5px;
}

    .upload-container.highlight {
        background-color: #f0f8ff;
        border-color: #007bff;
    }

    .upload-container:hover .tooltip-message {
        opacity: 1;
        animation: fadein 0.3s ease-in-out;
    }

.upload-message {
    font-size: 16px;
    color: #555;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    pointer-events: none;
}

    .upload-message i {
        font-size: 20px;
        position: relative;
        top: -3px;
    }

.txtboxprompt {
    min-height: 80px !important;
}

.image-preview {
    margin-top: 10px;
    display: none;
    align-items: center;
    gap: 10px;
}

    .image-preview img {
        border: 1px solid #24254b;
        padding: 2px;
    }

.remove-image-btn {
    border: none;
    font-size: 13px;
    cursor: pointer !important;
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    background: #24254b;
}

input[type="file"] {
    display: none;
}

.toggle-disabled {
    pointer-events: none;
    opacity: 0.4;
}

@keyframes fadein {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


@media(min-width: 1801px) {
    .col-40 {
        width: 500px;
    }

    .blockoverlay .btnremb {
        font-size: 18px;
        margin-right: 2px;
    }
}

@media(min-width: 768px) and (max-width: 1199px) {
    .smfnt {
        font-size: 13px;
    }
}

@media(min-width: 992px) and (max-width: 1199px) {
    .col-40 {
        width: 50%;
    }
}

@media(max-width: 991px) {
    .ds-flex {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch;
    }

    .col-40 {
        width: 100%;
    }
}

@media(max-width: 767px) {
    .iconlegendPanelBtn {
        padding-left: 10px;
    }

    .form-check.form-switch {
        display: block;
        margin: 10px 0 20px;
    }

        .form-check.form-switch .form-check-label {
            margin-right: 0px;
            margin-bottom: 10px;
        }

    .toggle-container {
        width: 100%;
        flex-flow: column;
        height: 100%;
        align-items: start;
    }

    .toggle-slider {
        height: 35px;
        left: 5px;
        text-align: left;
        width: 97%;
    }

    .toggle-label {
        min-height: 35px;
        margin-bottom: 10px;
        padding: 5px 10px;
    }

    .toggle-container[data-value="original"] .toggle-slider {
        left: 5px;
    }

    .toggle-container[data-value="simple-design"] .toggle-slider {
        top: 48px;
        width: 97%;
        left: 0;
    }

    .toggle-container[data-value="briefly-enhanced"] .toggle-slider {
        left: 0;
        width: 97%;
        top: 93px;
    }

    .toggle-container[data-value="detailed"] .toggle-slider {
        left: 0;
        width: 97%;
        bottom: 16px;
        top: auto;
    }

    .ds-flex {
        flex-wrap: wrap;
        align-items: end;
    }

    .galleryslider .owl-controls .owl-buttons div {
        font-size: 35px;
    }

    .galleryslider .owl-next {
        right: -19px !important;
    }

    .galleryslider .owl-prev {
        left: -20px !important;
    }

    .galleryslider .owl-prev, .galleryslider .owl-next {
        top: 35%
    }
}

@media(max-width: 600px) {
    .col-40 {
        width: 100%;
    }
}





.cadmessage {
    font-size: 14px;
    z-index: 99;
}

    .cadmessage span {
        margin: 5px 0;
    }

.hero-button i {
    font-size: 20px;
}

.form-box {
    background: rgb(242 242 242) !important;
    border-radius: 20px;
    overflow: hidden;
}

.image-preview .position-relative {
    margin: 10px;
    border-radius: 20px;
    overflow: hidden;
}

.image-preview img {
    max-width: 120px;
    padding: 0 !important;
    border: none !important;
}

.image-preview .remove-image-btn {
    top: 10px !important;
    right: 10px !important;
}

.block-ci .txtboxprompt {
    margin-top: 0;
    background: none !important;
}

.upload-container {
    border: none;
    text-align: left;
    margin: 0;
    padding: 0;
}

.form-box .btnInsideTextbox, .btnInsideTextbox:hover {
    right: 20px;
    top: 22%;
}

.form-box .upload-message {
    font-size: inherit !important;
    color: #212340 !important;
    display: block;
    pointer-events: all;
    font-weight: bold !important;
    background: #fff;
}

    .form-box .upload-message i.ri-send-plane-2-fill {
        color: #fff;
    }

    .form-box .upload-message i {
        font-size: 18px !important;
        position: static !important;
    }

.form-box .btn-success {
    background: #17182d !important;
    border-color: #17182d !important;
    color: #fff !important;
}

button#loadingBtn {
    border: none;
    padding: 10px;
}

    button#loadingBtn, button#loadingBtn .spinner {
        position: static;
        margin: 0 !important;
    }

.block-ci .txtboxprompt:focus, .upload-container:focus-visible {
    border: none !important;
}

@media(max-width: 767px) {
    .ci-right-panel {
        min-height: 350px;
    }
}
.block-ci .txtboxprompt {
    border: none !important;
}

.request p {
    margin: 0;
}
.response {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.chathistory .wrapper {
    background: rgb(242 242 242) !important;
    border-radius: 20px;
    overflow: hidden;
    border: none;
}

@media (max-width: 540px) {
    .chat-section .cadmessage {
        margin-top: 0 !important;
    }
    .typewriter {
        max-width: 244px !important;
    }
    .btndownload, .btndownload:hover {
        font-size: 19px;
    }
}