body {
    /*   background-image: linear-gradient(to right, #4389a3, #6b8dbd, #a48cc4, #d68bb5, #f49296);*/
    background: url('../images/system_logo/SR-BACKDROP-2.jpg') no-repeat center center fixed;
    /* background: url('../images/system_logo/rockies.jpg') no-repeat center center fixed; */
    background-size: cover;
    font-family: "Roboto", "Arial", sans-serif;
    font-size: 1.6rem;
    font-weight: 300;
    color: #666;
    background-repeat: no-repeat;
    height: 100vh;
}

.p {
    font-weight: 700;
    text-align: center;
    font-size: 29px;
    font-family: Hack, cursive;
    text-transform: uppercase;
    background: linear-gradient(90deg, #000, #fff, #000);
    letter-spacing: 5px;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: no-repeat;
    background-size: 80%;
    animation: shine 5s linear infinite;
    position: relative;
    /* color:rgb(212, 160, 16); */
}

#body {
    width: 98.5%;
}

@keyframes shine {
    0% {
        background-position-x: -500%;
    }
    100% {
        background-position-x: 500%;
    }
}

body {
    overflow-y: scroll;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
}

body::-webkit-scrollbar {
    /* WebKit */
    width: 0;
    height: 0;
    background: rgba(255, 255, 255, 0.418);
}

.modal {
    overflow-y: auto;
}

.body {
    overflow-y: none;
}

a {
    color: #d33b3b;
}

body[style] {
    padding-right: 0px !important;
}

span,
label {
    font-size: 14px;
    font-weight: 550;
    color: #5f5d5d;
}

h1,
h2,
h3 {
    font-size: 100%;
}

i {
    color: #a5a3a3;
    font-weight: 400;
}

#divi_fee {
    height: 40px;
    width: 40px;
    border-style: groove;
    border: 2px solid #dedbd9;
    background-image: url('../images/images/unknown2-128.png');
    background-size: 36px;
    background-repeat: no-repeat;
    -webkit-transition: width 0.4s ease-in-out;
    transition: width 0.4s ease-in-out;
    font-size: 16px;
    border-radius: 27px;
    background-color: #f0f0f0;
}

#divi_fee1 {
    height: 70px;
    width: 70px;
    border-style: groove;
    border: 2px solid #dedbd9;
    background-image: url('../images/images/unknown2-128.png');
    background-size: 36px;
    background-repeat: no-repeat;
    -webkit-transition: width 0.4s ease-in-out;
    transition: width 0.4s ease-in-out;
    font-size: 16px;
    border-radius: 27px;
    background-color: #f0f0f0;
}

input {
    font-size: 80%;
}

#spinner {
    color: #f2f2f2;
    font-weight: 400;
}

#button_text {
    color: #f2f2f2;
    font-weight: 400;
}

#button_textt {
    color: #f2f2f2;
    font-weight: 400;
}

#button_texttt {
    color: #f2f2f2;
    font-weight: 400;
}

#button_textttt {
    color: #f2f2f2;
    font-weight: 400;
}

#button_texttttt {
    color: #f2f2f2;
    font-weight: 400;
}

.input-group-text {
    position: absolute;
    border: none;
    background: white;
    border-radius: 0px;
    font-size: 20px;
    margin-top: 8px;
    padding: 1px 0px 0px;
}

.form-control {
    border-radius: 0px;
    max-width: 100%;
}

.custom-select {
    font-weight: 450;
    font-size: 13px;
}

.mb-2 {
    padding: 0px 0px 50px;
}

.mb-4 {
    width: 40px;
    margin-top: 7px;
}

.mb-6 {
    width: 40px;
    font-size: 20px;
}

.mb-7 {
    width: 70px;
    font-size: 20px;
    margin-bottom: 30px;
}

.col {
    padding: 0px;
}


/* Customize the label (the container) */

.containner {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 15px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


/* Hide the browser's default radio button */

.containner input {
    position: absolute;
    opacity: 0;
}


/* Create a custom radio button */

.checkmarkk {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border-radius: 50%;
}


/* On mouse-over, add a grey background color */

.containner:hover input~.checkmarkk {
    background-color: #ccc;
}


/* When the radio button is checked, add a blue background */

.containner input:checked~.checkmarkk {
    background-color: #2196F3;
}


/* Create the indicator (the dot/circle - hidden when not checked) */

.checkmarkk:after {
    content: "";
    position: absolute;
    display: none;
}


/* Show the indicator (dot/circle) when checked */

.containner input:checked~.checkmarkk:after {
    display: block;
}


/* Style the indicator (dot/circle) */

.containner .checkmarkk:after {
    top: 9px;
    left: 9px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: white;
}


/* The CSS */

#select {
    padding: 10px;
    margin: 0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 0px;
    -webkit-box-shadow: 0 3px 0 #ccc, 0 -1px #fff inset;
    -moz-box-shadow: 0 3px 0 #ccc, 0 -1px #fff inset;
    box-shadow: 0 1px 0 #535353, 0 -1px #fff inset;
    background: #f8f8f8;
    color: #535353;
    border: none;
    outline: none;
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    width: 323px;
}


/* Targetting Webkit browsers only. FF will show the dropdown arrow with so much padding. */

@media screen and (-webkit-min-device-pixel-ratio:0) {
    #select {
        padding-right: 18px
    }
}

#llabel {
    position: relative
}

#llabel:after {
    content: '<>';
    font: 19px "Consolas", monospace;
    color: #aaa;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    margin-left: 295px;
    top: 2px;
    padding: 0 0 2px;
    border-bottom: 1px solid #ddd;
    position: absolute;
    pointer-events: none;
}

#llabel:before {
    content: '';
    right: 6px;
    top: 0px;
    width: 20px;
    height: 20px;
    background: #f8f8f8;
    position: absolute;
    pointer-events: none;
    display: block;
}


/* The CSS */

#selectt {
    padding: 10px;
    margin: 0;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 0px;
    -webkit-box-shadow: 0 3px 0 #ccc, 0 -1px #fff inset;
    -moz-box-shadow: 0 3px 0 #ccc, 0 -1px #fff inset;
    box-shadow: 0 1px 0 #535353, 0 -1px #fff inset;
    background: #f8f8f8;
    color: #535353;
    border: none;
    outline: none;
    display: inline-block;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    width: 370px;
}


/* Targetting Webkit browsers only. FF will show the dropdown arrow with so much padding. */

@media screen and (-webkit-min-device-pixel-ratio:0) {
    #select {
        padding-right: 18px
    }
}

#llabell {
    position: relative
}

#llabell:after {
    content: '<>';
    font: 19px "Consolas", monospace;
    color: #aaa;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    margin-left: 295px;
    top: 2px;
    padding: 0 0 2px;
    border-bottom: 1px solid #ddd;
    position: absolute;
    pointer-events: none;
}

#llabell:before {
    content: '';
    right: 6px;
    top: 0px;
    width: 20px;
    height: 20px;
    background: #f8f8f8;
    position: absolute;
    pointer-events: none;
    display: block;
}

#containe input,
#containe select {
    position: absolute;
    box-sizing: border-box;
    box-shadow: none;
    outline: none;
    border: none;
    border-bottom: 1px solid #726767;
    background: rgba(255, 255, 255, 0);
    text-indent: 16px;
    font-weight: 450;
}

#containe #label {
    position: absolute;
    margin-top: 10px;
    pointer-events: none;
    margin-left: 40px;
    transition: .40s;
    transition-property: all;
    font-weight: 400;
    font-size: 15px;
    color: #989898;
}

#containe input:focus,
#containe input:valid,
#containe select:focus,
#containe select:valid {
    border-bottom: 1px solid #2796bf;
}

#containe input:focus~#label,
#containe input:valid~#label,
#containe select:focus~#label,
#containe select:valid~#label {
    margin-left: 0px;
    margin-top: -15px;
    color: #2796bf;
    font-size: 13px;
    font-weight: 450;
}

#containe-non-indent input {
    position: absolute;
    box-sizing: border-box;
    box-shadow: none;
    outline: none;
    border: none;
    border-bottom: 1px solid #726767;
    background: rgba(255, 255, 255, 0);
    font-weight: 450;
}

#containe-non-indent #label {
    position: absolute;
    margin-top: 10px;
    pointer-events: none;
    margin-left: 10px;
    transition: .40s;
    transition-property: all;
    font-weight: 400;
    font-size: 15px;
    color: #989898;
}

#containe-non-indent input:focus,
#containe-non-indent input:valid {
    border-bottom: 1px solid #2796bf;
}

#containe-non-indent input:focus~#label,
#containe-non-indent input:valid~#label {
    margin-left: 0px;
    margin-top: -15px;
    color: #2796bf;
    font-size: 13px;
    font-weight: 450;
}

.navbar {
    background: #ffffff;
    padding: px 12px;
    box-shadow: 0px 0px 0px rgba(64, 62, 62, 0.42);
}

#navbar-brand {
    font-size: 14px;
    margin-left: 4px;
    color: #412f2f;
}

#header {
    border-bottom: 2px solid rgb(242, 159, 159)
}

#navbar_bottom {
    display: none;
}

#signin {
    margin: 10.3% auto;
}

#entry_point {
    margin: -1.1% auto;
    padding: 0px;
}

#signin1 {
    margin: 5.3% auto;
}

#menu {
    margin: 2% auto;
}

.card {
    background: rgb(255, 255, 255);
    border: none;
    border-bottom: 2px solid rgb(242, 159, 159);
}

#divMsg_phone {
    display: none;
}

#gradingg_forward {
    color: saddlebrown;
}

#gradingg_back {
    color: saddlebrown;
}

#adminSettings_forward {
    color: saddlebrown;
}

#adminSettings_back {
    color: saddlebrown;
}

table {
    font-size: 80%;
    font-weight: 550;
}

th {
    color: #842727;
}

td {
    font-weight: 430;
    font-size: 11px;
}

table {
    border-collapse: collapse;
    width: 100%;
}

.modal {
    background: rgba(0, 0, 0, 0.83);
}

th {
    border: 1px solid rgba(224, 224, 224, 0.53);
    text-align: center;
    padding: 8px;
}

td {
    text-align: center;
    padding: 8px;
    cursor: -webkit-pointer;
    cursor: pointer;
}

table:last-child {
    border: 1px solid black;
}

tr:nth-child(even) {
    background-color: #ffffff;
}

#classes tr:hover {
    background: #d4e4ea;
    color: white;
}

.classes {
    background: rgba(245, 245, 245, 0.87);
    border: 1px solid #a0a0a0;
    box-shadow: 2px 6px 8px #958282;
}

.header {
    /*background-image: linear-gradient(#f7c4c4, #ffffff , #f7c4c4);*/
    background-image: linear-gradient(#ffffff, #ebf2f4, #f4f4f4);
}

.headerr {
    font-size: 10px;
}

.example1 {
    border: 1px sollid black;
}

.example1 h3 {
    font-weight: 600;
    /* Apply animation to this element*/
    -moz-animation: example1 8s linear infinite;
    -webkit-animation: example1 8s linear infinite;
    animation: example1 8s linear infinite;
}


/* Move it (define the animation) */

@-moz-keyframes example1 {
    0% {
        -moz-transform: translateX(10%);
    }
    100% {
        -moz-transform: translateX(-10%);
    }
}

@-webkit-keyframes example1 {
    0% {
        -webkit-transform: translateX(10%);
    }
    100% {
        -webkit-transform: translateX(-10%);
    }
}

@media (max-width: 500px) {
    .input-group-text {
        margin-top: 6px;
    }
    #containe input {
        width: 135%;
    }
    #containe #label {
        font-size: 14px;
    }
    #containe input:focus~#label,
    #containe input:valid~#label {
        font-size: 13px;
    }
    /* The CSS */
    #selectt {
        width: 323px;
    }
    html {
        font-size: 100%;
    }
    select,
    textarea,
    button,
    a,
    span {
        font-size: 11px;
        line-height: 1.3;
        font-family: sans-serif
        /*{global-font-family}*/
        ;
    }
    .form-control {
        font-size: 13px;
        font-weight: 450;
        font-family: sans-serif;
        border: 1px solid #b2b6b7;
        padding: 8px 8px 8px;
    }
    p {
        font-size: 68%;
        font-weight: 500;
        color: #767575;
    }
    table {
        font-size: 68%;
        font-weight: 550;
    }
    th {
        color: #842727;
    }
    td {
        font-weight: 430;
    }
    h1,
    h2,
    h3 {
        font-size: 120%;
    }
    h4,
    h5 {
        font-size: 15px;
    }
    #signin {
        margin: 14.3% auto;
        padding: 0px;
    }
    #signin1 {
        margin: 14.3% auto;
        padding: 0px;
    }
    #divMsg {
        display: none;
    }
    #divMsg_phone {
        display: block;
        text-align: center;
        margin: 220px auto;
    }
    .card {
        jhjborder-top: 2px solid rgb(242, 159, 159);
        border-bottom: none;
    }
    .card-header {
        display: none;
    }
    #navbar_bottom {
        display: block;
    }
    #header {
        background: #4389a3;
        color: white;
    }
    #footer {
        border-top: 1px solid rgb(242, 159, 159);
        background: #ffffff;
    }
    .list-inline {
        margin-bottom: -0px;
    }
    #links {
        font-size: 20px;
    }
    #fav {
        font-size: 20px;
        color: #a0b9c3;
        padding: 6px;
        text-shadow: 1px 1px 2px black;
    }
    #footer-text {
        color: #4389a3;
        font-size: 10px;
    }
    #error-messagee {
        width: 107%;
        margin-left: -15px;
    }
    .alert-danger {
        background: #363636;
        color: #fdfdfd;
        text-shadow: 1px solid black;
        font-size: 13px;
        border: none;
        border-radius: 0px;
    }
    .alert-danger .close {
        color: #ffffff;
        text-shadow: 1px solid black;
        margin-top: -5px;
    }
    .alert-success {
        background: #363636;
        color: #fdfdfd;
        text-shadow: 1px solid black;
        font-size: 13px;
        border: none;
        border-radius: 0px;
    }
    .alert-success .close {
        color: #ffffff;
        text-shadow: 1px solid black;
        margin-top: -5px;
    }
    .btn:hover {
        background: #4389a3;
    }
    #navbar-brand {
        color: #f5f5f5;
        text-shadow: 1px 1px 1px #4e4e4e;
    }
    #userImage {
        font-size: 11px;
        margin-bottom: 15px;
    }
    #gradingg_forward {
        color: #fff2f2;
    }
    #gradingg_back {
        color: #fff2f2;
    }
    #adminSettings_forward {
        color: #fff2f2;
    }
    #adminSettings_back {
        color: #fff2f2;
    }
}

.card-header {
    text-transform: uppercase;
    color: #6a5b31;
    letter-spacing: 1px;
    font-size: 1.4em;
    line-height: 2.8em;
    border-bottom: 2px solid rgb(242, 159, 159);
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    background: #4389a3;
}

.card-footer {
    border-top: 1px solid rgba(230, 167, 167, 0.99);
}

.modal-header {
    text-transform: uppercase;
    color: #6a5b31;
    letter-spacing: 1px;
    font-size: 1.4em;
    line-height: 2.8em;
    border-bottom: 4px solid rgb(90, 90, 90);
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    background: #4389a3;
    padding: 10px 10px;
}

.modal-body {
    border-top: 0px solid rgb(90, 90, 90)
}

.box-header {
    background-color: #4f6e71;
    margin-top: 0;
    border-radius: 5px 5px 0 0;
    border: none;
}

.border-top {
    border-top: 1px solid #e5e5e5;
}

.border-bottom {
    border-bottom: 1px solid #e5e5e5;
}

.border-top-gray {
    border-top-color: #adb5bd;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

.lh-condensed {
    line-height: 1.25;
}

.btn {
    background: #4389a3;
    color: aliceblue;
    border: none;
    font-size: 15px;
    margin-top: -15px;
}

.btn:hover {
    background: #54a5c3;
}

.form-control:focus {
    border-color: #6c5e39;
    box-shadow: none;
    -webkit-box-shadow: none;
}

#error-message {
    width: 110%;
    margin-left: -16px;
    border-top: 2px solid rgb(242, 159, 159);
}

#network-error-message {
    width: 110%;
    margin-left: -16px;
    border-top: 2px solid rgb(242, 159, 159);
}

#success-message {
    width: 110%;
    margin-left: -16px;
    border-top: 2px solid rgb(242, 159, 159);
}

.alert-danger {
    background: #363636;
    color: #c9aaaa;
    text-shadow: 2px 2px 1px 1px black;
    border: none;
    border-radius: 0px;
}

.alert-danger .close {
    color: #ffffff;
    text-shadow: 1px solid black;
}

.alert-success {
    background: #363636;
    color: #aac9b0;
    text-shadow: 2px 2px 1px 1px black;
    border: none;
    border-radius: 0px;
}

.alert-success .close {
    color: #ffffff;
    text-shadow: 1px solid black;
}

#targetOuter {
    height: 120px;
    width: 120px;
    border: 3px solid rgb(77, 131, 185);
    background-image: url('../images/images/images.png');
    background-size: 120px;
    background-repeat: no-repeat;
    position: relative;
    text-align: center;
    margin: 0px auto;
}

#userImage {
    margin-top: 10px;
    background: white;
}

.upload-preview {
    border-radius: 0px;
}

#body-overlay {
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 999;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: none;
}

#body-overlay div {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -32px;
    margin-left: -32px;
}

.container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}


/* Hide the browser's default checkbox */

.container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}


/* Create a custom checkbox */

.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border: 1px solid #b9b9b9;
    border-radius: 6px;
}


/* On mouse-over, add a grey background color */

.container:hover input~.checkmark {
    background-color: #ccc;
}


/* When the checkbox is checked, add a blue background */

.container input:checked~.checkmark {
    background-color: #2196F3;
    border: none;
}


/* Create the checkmark/indicator (hidden when not checked) */

.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}


/* Show the checkmark when checked */

.container input:checked~.checkmark:after {
    display: block;
}


/* Style the checkmark/indicator */

.container .checkmark:after {
    left: 9px;
    top: 5px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

#checkbox_text {
    font-size: 13px;
}

.modal-lg {
    max-width: 90%;
}

#studentImage {
    height: 58px;
    width: 58px;
    border: 3px solid rgb(77, 131, 185);
    background-image: url('../images/images/unknown2-128.png');
    background-position: center;
    background-size: 57px;
    background-repeat: no-repeat;
    position: relative;
    text-align: center;
    margin: 0px auto;
    border-radius: 500px;
    margin-bottom: 15px;
}

img {
    text-indent: -100000px;
}


/*
 CSS for the main interaction
*/

.tabset>input[type="radio"] {
    position: absolute;
    left: -200vw;
}

.tabset .tab-panel {
    display: none;
}

.tabset>input:first-child:checked~.tab-panels>.tab-panel:first-child,
.tabset>input:nth-child(3):checked~.tab-panels>.tab-panel:nth-child(2),
.tabset>input:nth-child(5):checked~.tab-panels>.tab-panel:nth-child(3),
.tabset>input:nth-child(7):checked~.tab-panels>.tab-panel:nth-child(4),
.tabset>input:nth-child(9):checked~.tab-panels>.tab-panel:nth-child(5),
.tabset>input:nth-child(11):checked~.tab-panels>.tab-panel:nth-child(6),
.tabset>input:nth-child(13):checked~.tab-panels>.tab-panel:nth-child(7),
.tabset>input:nth-child(15):checked~.tab-panels>.tab-panel:nth-child(8),
.tabset>input:nth-child(17):checked~.tab-panels>.tab-panel:nth-child(9),
.tabset>input:nth-child(19):checked~.tab-panels>.tab-panel:nth-child(10),
.tabset>input:nth-child(21):checked~.tab-panels>.tab-panel:nth-child(11),
.tabset>input:nth-child(23):checked~.tab-panels>.tab-panel:nth-child(12),
.tabset>input:nth-child(25):checked~.tab-panels>.tab-panel:nth-child(13),
.tabset>input:nth-child(27):checked~.tab-panels>.tab-panel:nth-child(14),
.tabset>input:nth-child(29):checked~.tab-panels>.tab-panel:nth-child(15),
.tabset>input:nth-child(31):checked~.tab-panels>.tab-panel:nth-child(16),
.tabset>input:nth-child(33):checked~.tab-panels>.tab-panel:nth-child(17),
.tabset>input:nth-child(35):checked~.tab-panels>.tab-panel:nth-child(18),
.tabset>input:nth-child(37):checked~.tab-panels>.tab-panel:nth-child(19),
.tabset>input:nth-child(39):checked~.tab-panels>.tab-panel:nth-child(20),
.tabset>input:nth-child(41):checked~.tab-panels>.tab-panel:nth-child(21),
.tabset>input:nth-child(43):checked~.tab-panels>.tab-panel:nth-child(22) {
    display: block;
}


/*
 Styling
*/

body {
    font: 16px/1.5em "Overpass", "Open Sans", Helvetica, sans-serif;
    color: #333;
    font-weight: 300;
}

.tabset>label {
    position: relative;
    display: inline-block;
    padding: 15px 15px 25px;
    border: 1px solid transparent;
    border-bottom: 0;
    cursor: pointer;
    font-weight: 600;
}

.tabset>label::after {
    content: "";
    position: absolute;
    left: 15px;
    bottom: 10px;
    width: 22px;
    height: 4px;
    background: #8d8d8d;
}

.tabset>label:hover,
.tabset>input:focus+label {
    color: #cd80d8;
}

.tabset>label:hover::after,
.tabset>input:focus+label::after,
.tabset>input:checked+label::after {
    background: #cd80d8;
}

.tabset>input:checked+label {
    border-color: #cd80d8;
    border-bottom: 1px solid #fff;
    margin-bottom: -1px;
}

.tab-panel {
    padding: 30px 0;
    border-top: 1px solid #ccc;
}


/*
 Demo purposes only
*/

*,
*:before,
*:after {
    box-sizing: border-box;
}

body {
    padding: 30px;
}

.tabset {
    /* max-width: 65em; */
}

#divi_school_logo {
    height: 170px;
    width: 170px;
    border-style: groove;
    border-top: 3px dashed #ffcc00;
    border-right: 3px dashed #ffcc00;
    border-left: 3px dashed #000000;
    border-bottom: 3px dashed #000000;
    background-size: 180px;
    background-repeat: no-repeat;
    -webkit-transition: width 0.4s ease-in-out;
    transition: width 0.4s ease-in-out;
    border-radius: 50%;
    background-color: #ffffff;
    margin-top: 0px;
    background-position: center;
}

.menu-btnn {
    cursor: pointer;
}

.show {
    display: block;
}

.hide {
    display: none;
}

#floating-container {
    position: fixed;
    width: 40px;
    height: 90px;
    bottom: 10px;
    right: 70px;
    z-index: 50;
}

#floating-container .floating-menus>div {
    position: fixed;
    right: 50px;
}

#floating-container .floating-menus>div a {
    background-color: #f58220;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    box-shadow: 0px 1px 2px #B0BEC5;
}

#floating-container .floating-menus>div:nth-of-type(1) {
    bottom: 90px;
    animation: findcon 0.1s linear;
}

#floating-container .floating-menus>div:nth-of-type(2) {
    bottom: 125px;
    animation: viewlist 0.125s linear;
}

#floating-container .floating-menus>div:nth-of-type(3) {
    bottom: 160px;
    animation: addlist 0.135s linear;
}

#floating-container .floating-menus>div:nth-of-type(4) {
    bottom: 195px;
    animation: people 0.140s linear;
}

#floating-container .floating-menus>div:nth-of-type(5) {
    bottom: 230px;
    animation: invite 0.155s linear;
}

#floating-container .floating-menus>div:nth-of-type(6) {
    bottom: 265px;
    animation: onlineuser 0.165s linear;
}

#floating-container .floating-menus>div:nth-of-type(7) {
    bottom: 300px;
    animation: activities 0.175s linear;
}

#floating-container .fab-button {
    position: absolute;
    padding: 15px 20px;
    border-radius: 50%;
    background-color: #af4c4c;
    ;
    cursor: pointer;
    color: white;
    border: 2px solid white;
}

.floating-container-other {
    position: fixed;
    width: 40px;
    height: 90px;
    bottom: 10px;
    right: 70px;
    z-index: 50;
}


/* .floating-container-other .floating-menus>div {
    position: fixed;
    right: 50px;
}

.floating-container-other .floating-menus>div a {
    background-color: #f58220;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    box-shadow: 0px 1px 2px #B0BEC5;
}

.floating-container-other .floating-menus>div:nth-of-type(1) {
    bottom: 90px;
    animation: findcon 0.1s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(2) {
    bottom: 125px;
    animation: viewlist 0.125s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(3) {
    bottom: 160px;
    animation: addlist 0.135s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(4) {
    bottom: 195px;
    animation: people 0.140s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(5) {
    bottom: 230px;
    animation: invite 0.155s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(6) {
    bottom: 265px;
    animation: onlineuser 0.165s linear;
}

.floating-container-other .floating-menus>div:nth-of-type(7) {
    bottom: 300px;
    animation: activities 0.175s linear;
}

.floating-container .fab-button {
    position: absolute;
    padding: 15px 20px;
    border-radius: 50%;
    background-color: #af4c4c;
    ;
    cursor: pointer;
    color: white;
    border: 2px solid white;
} */

#floating-container-tutorial {
    position: fixed;
    /* width: 40px; */
    height: 90vh;
    bottom: 10px;
    margin-right: 4000vh;
    z-index: 50;
}

#floating-container-tutorial .floating-menus>div {
    position: fixed;
    right: 50px;
}

#floating-container-tutorial .floating-menus>div a {
    background-color: #f58220;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    box-shadow: 0px 1px 2px #B0BEC5;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(1) {
    bottom: 90px;
    animation: findcon 0.1s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(2) {
    bottom: 125px;
    animation: viewlist 0.125s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(3) {
    bottom: 160px;
    animation: addlist 0.135s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(4) {
    bottom: 195px;
    animation: people 0.140s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(5) {
    bottom: 230px;
    animation: invite 0.155s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(6) {
    bottom: 265px;
    animation: onlineuser 0.165s linear;
}

#floating-container-tutorial .floating-menus>div:nth-of-type(7) {
    bottom: 300px;
    animation: activities 0.175s linear;
}

#floating-container-tutorial .card {
    position: absolute;
    background-color: white;
    cursor: pointer;
    color: white;
    border: 2px solid white;
    padding: 0px;
}

#floating-container-tutorial .card-body {
    padding: 0px;
}

.blinking {
    animation: blinkingText 1.8s infinite;
}

@keyframes blinkingText {
    0% {
        color: #d66060;
    }
    49% {
        color: #cb8c8c;
    }
    50% {
        color: #c69797;
    }
    99% {
        color: rgba(203, 140, 140, 0.27);
    }
    100% {
        color: #000;
    }
}

.fab-button {
    animation-name: blinker;
    animation-duration: 4s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

@keyframes blinker {
    0% {
        opacity: 1.0;
    }
    50% {
        opacity: 0.0;
    }
    100% {
        opacity: 1.0;
    }
}

.blink {
    animation-name: blinker1;
    animation-duration: 4s;
    animation-timing-function: ease-in;
    animation-iteration-count: infinite;
    -webkit-animation-name: blinker;
    -webkit-animation-duration: 4s;
    -webkit-animation-timing-function: ease-in;
    -webkit-animation-iteration-count: infinite;
}

@-moz-keyframes blinker1 {
    /* Decimal not necessary, 0 and 1 is enough */
    0% {
        opacity: 1.0;
    }
    50% {
        opacity: 0.2;
    }
    100% {
        opacity: 1.0;
    }
}

@-webkit-keyframes blinker1 {
    0% {
        opacity: 1.0;
    }
    50% {
        opacity: 0.2;
    }
    100% {
        opacity: 1.0;
    }
}

@keyframes blinker1 {
    0% {
        opacity: 1.0;
    }
    50% {
        opacity: 0.2;
    }
    100% {
        opacity: 1.0;
    }
}

@keyframes findcon {
    from {
        bottom: 80px;
    }
    to {
        bottom: 90px;
    }
}

@keyframes viewlist {
    from {
        bottom: 80px;
    }
    to {
        bottom: 125px;
    }
}

@keyframes addlist {
    from {
        bottom: 80px;
    }
    to {
        bottom: 160px;
    }
}

@keyframes people {
    from {
        bottom: 80px;
    }
    to {
        bottom: 195px;
    }
}

@keyframes invite {
    from {
        bottom: 80px;
    }
    to {
        bottom: 230px;
    }
}

@keyframes onlineuser {
    from {
        bottom: 80px;
    }
    to {
        bottom: 265px;
    }
}

@keyframes activities {
    from {
        bottom: 80px;
    }
    to {
        bottom: 300px;
    }
}

.modal.fade .modal-dialog {
    -webkit-transition: -webkit-transform 5s ease-out;
    /* if this is too slow, change it back to .5s */
    -moz-transition: -moz-transform 5s ease-out;
    -ms-transition: -ms-transform 5s ease-out;
    -o-transition: -o-transform 5s ease-out;
    transition: transform 5s ease-out;
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition-duration: 5s;
    -moz-transition-duration: 5s;
    -o-transition-duration: 5s;
    transition-duration: 5s;
    /* note that the seconds are added */
}

modal {
    overflow-y: auto;
}

.modal-open {
    overflow: auto;
}

.classes {
    background: rgba(245, 245, 245, 0.87);
    border: 1px solid #a0a0a0;
    box-shadow: 2px 6px 8px #958282;
}

.classes tr:nth-child(even) {
    background-color: rgba(245, 245, 245, 0.87);
}

.classes tr:hover {
    background: none;
    color: none;
}

.tableFixHead thead {
    position: sticky;
    top: 0;
    /* z-index: 9999; */
    background: linear-gradient(#ffffff, #ebf2f4, #f4f4f4);
}

.vertical-alignment-helper {
    display: table;
    height: 100%;
    width: 100%;
    pointer-events: none;
}

.vertical-align-center {
    /* To center vertically */
    display: table-cell;
    vertical-align: middle;
    pointer-events: none;
}

.modal-content {
    /* Bootstrap sets the size of the modal in the modal-dialog class, we need to inherit it */
    width: inherit;
    max-width: inherit;
    /* For Bootstrap 4 - to avoid the modal window stretching full width */
    height: inherit;
    /* To center horizontally */
    margin: 0 auto;
    pointer-events: all;
}

.vertically-center {
    height: 100%;
    position: relative;
    margin: 0% auto;
}

.vertically-center1 {
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

#country-list {
    float: left;
    list-style: none;
    margin-top: -3px;
    padding: 0;
    /* width: 81%; */
    position: fixed;
}

#country-list li {
    padding: 10px;
    background: #f0f0f0;
    border-bottom: #bbb9b9 1px solid;
}

#country-list li:hover {
    background: #ece3d2;
    cursor: pointer;
}

#search-box {
    padding: 10px;
    border: 2px solid black;
    border-radius: 4px;
    width: 100%;
}

.loader-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


/* Spinner */

.lds-roller {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px;
}

.lds-roller div {
    animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    transform-origin: 32px 32px;
}

.lds-roller div:after {
    content: " ";
    display: block;
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #333;
    margin: -3px 0 0 -3px;
}

.lds-roller div:nth-child(1) {
    animation-delay: -0.036s;
}

.lds-roller div:nth-child(1):after {
    top: 50px;
    left: 50px;
}

.lds-roller div:nth-child(2) {
    animation-delay: -0.072s;
}

.lds-roller div:nth-child(2):after {
    top: 54px;
    left: 45px;
}

.lds-roller div:nth-child(3) {
    animation-delay: -0.108s;
}

.lds-roller div:nth-child(3):after {
    top: 57px;
    left: 39px;
}

.lds-roller div:nth-child(4) {
    animation-delay: -0.144s;
}

.lds-roller div:nth-child(4):after {
    top: 58px;
    left: 32px;
}

.lds-roller div:nth-child(5) {
    animation-delay: -0.18s;
}

.lds-roller div:nth-child(5):after {
    top: 57px;
    left: 25px;
}

.lds-roller div:nth-child(6) {
    animation-delay: -0.216s;
}

.lds-roller div:nth-child(6):after {
    top: 54px;
    left: 19px;
}

.lds-roller div:nth-child(7) {
    animation-delay: -0.252s;
}

.lds-roller div:nth-child(7):after {
    top: 50px;
    left: 14px;
}

.lds-roller div:nth-child(8) {
    animation-delay: -0.288s;
}

.lds-roller div:nth-child(8):after {
    top: 45px;
    left: 10px;
}

@keyframes lds-roller {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.logout {
    background: #484B4F;
    width: 100px;
    cursor: pointer;
    border-radius: 50px;
    padding: 10px 20px 10px 0;
    color: White;
    font-size: 14px;
    text-align: left;
    text-indent: 7px;
    margin: 0 auto;
    /* Animations: */
    -webkit-transition-timing-function: ease-in-out;
    -webkit-transition-duration: .4s;
    -webkit-transition-property: all;
    -moz-transition-timing-function: ease-in-out;
    -moz-transition-duration: .4s;
    -moz-transition-property: all;
}

.logout:hover {
    background-position: 65px 5px;
    text-indent: 15px;
}

.top:hover {
    color: #4389a3 !important;
    font-size: 14.5px !important;
}

.info-msg,
.success-msg,
.warning-msg,
.error-msg {
    margin: 10px 0;
    padding: 10px;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    width: 100%;
}

.success-msg,
.success-msg i {
    color: #270;
    background-color: #DFF2BF;
}

.warning-msg,
.warning-msg i {
    color: #9F6000;
    background-color: #FEEFB3;
}

.error-msg,
.error-msg i {
    color: #D8000C;
    background-color: #FFBABA;
}


/* Just for CodePen styling - don't include if you copy paste */

.info-msg,
.success-msg,
.warning-msg,
.error-msg {
    font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
    font-weight: 300;
}

.image {
    display: block;
    width: 55px;
    height: 55px;
    overflow: hidden;
    -webkit-border-radius: 180px;
    -moz-border-radius: 180px;
    -ms-border-radius: 180px;
    -o-border-radius: 180px;
    border-radius: 180px;
    position: relative;
    margin: 0px auto;
    text-align: center;
    margin-bottom: 10px;
    border: 3px solid #FFF;
    -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 3px 8px rgba(0, 0, 0, 0.3);
    -moz-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 3px 8px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 3px 8px rgba(0, 0, 0, 0.3);
}

.image img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border: 0;
    -ms-interpolation-mode: bicubic;
}

.image span {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -5;
    background: #888;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    padding: 1.5em 1em 0;
}

.image:hover span {
    display: block;
}

.collapsible-view {
    /* background: #f5f4f9; */
    background: linear-gradient(#f5f4f9, #f5f4f9, #f5f4f9);
    color: rgb(79, 79, 79);
    cursor: pointer;
    padding: 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 15px;
    box-shadow: 0.1rem 0.1rem 0.3rem rgba(0, 0, 0, 0.25);
    /* border-radius: 5px; */
}

.collapsible-view:focus {
    outline: none;
}

.active-view,
.collapsible-view:hover {
    background-color: #555;
}

.collapsible-view .colIcon:after {
    content: "\2212";
    color: rgb(79, 79, 79);
    font-weight: bold;
    float: right;
    margin-left: 5px;
    background: black;
    padding: 1px;
    border-radius: 100%;
    padding-right: 4px;
    padding-left: 4px;
    color: white;
    box-shadow: 0.1rem 0.1rem 0.3rem rgba(0, 0, 0, 0.25);
}

.active-view .colIcon:after {
    content: '\002B';
    background: red;
    padding: 1px;
    border-radius: 100%;
    padding-right: 4px;
    padding-left: 4px;
    color: white;
    box-shadow: 0.1rem 0.1rem 0.3rem rgba(0, 0, 0, 0.25);
}

.content-view {
    /* padding: 0 18px; */
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
    background-color: #f1f1f1;
    /* border: 1px solid rgb(245, 245, 245); */
    border: 1px solid rgba(100, 100, 100, 0);
    width: 100%;
    margin-bottom: 15px;
}

.main-header {
    background: #fff;
    margin: 0;
}

.caret-up {
    width: 0;
    height: 0;
    border-left: 4px solid rgba(0, 0, 0, 0);
    border-right: 4px solid rgba(0, 0, 0, 0);
    border-bottom: 4px solid;
    display: inline-block;
    margin-left: 2px;
    vertical-align: middle;
}

.dropdown-menu>li>a:focus,
.dropdown-menu>li>a:hover {
    text-decoration: none;
    background: #B9B7B7 !important;
    color: #fff;
}

.dropdown-menu {
    padding: 0px 0px !important;
    left: 32% !important;
}

.stripe {
    height: 70px;
}

div.hamburger-box {
    width: 50px;
    height: 50px;
    display: block;
    position: absolute;
    top: 10px;
    right: 0;
    cursor: pointer;
    background: #fff;
    z-index: 9999;
    margin-right: -15px;
}

.hamburger-box.active span {
    display: none;
}

.hamburger-box span {
    color: #000;
    background: #fff;
    position: absolute;
    line-height: 50px;
    font-size: 16px;
    right: 50px;
    padding: 0 10px;
    display: inline-block;
    height: 50px;
    width: 105%;
}

.ham-box1 {
    background: #273d52 !important;
    color: rgb(217, 82, 139) !important;
}

.hamburger-box .fa-times {
    color: rgb(217, 82, 139) !important;
}

.super-container {
    position: relative;
    height: 100%;
    background: none;
}

.slide-container {
    position: fixed;
    text-align: center;
    height: 100%;
    right: 0;
    background: none;
}

a.toggle {
    position: relative;
    top: 30px;
}

.menu {
    width: 490px;
    background-color: none;
    position: absolute;
    top: 0;
    right: -450px;
    margin: 0;
    text-align: left;
    z-index: 99;
    height: 100%;
}

.menu.active {
    right: 0;
}

.menu a {
    transition: all 200ms ease-in-out;
    -webkit-transition: all 200ms ease-in-out;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 12px 15px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(200, 200, 200, 0.1);
}

.menu a:first-child {
    border-top: none;
}

.menu a:hover {
    background-color: #333;
}

.slide-container,
.menu {
    transition: right 300ms ease-out;
    -webkit-transition: right 300ms ease-out;
}

.menu-on .slide-container {
    left: -200px;
}

div.hamburger-box {
    z-index: 999;
    width: 50px;
    right: 0px;
}

.menu ul {
    background: #273d52;
    padding: 0px;
}

.dropbtn {
    color: #fff;
    padding: 12px 15px;
}

.dropdown-content {
    padding-left: 10px;
}

.hamburger-box span {
    right: 55px;
}

.hamburger-box.active {
    top: 0;
    background: #273D52;
}

#youtube_videos {
    max-width: 1700px;
    margin: 0 auto;
    width: 100%;
    height: auto;
    min-height: 300px;
    display: block;
    background-color: #fff;
    /* padding: 15px 10px; */
    box-shadow: 0 1px 1px rgba(0, 0, 0, .04);
}

#youtube_videos .more-info-wrap {
    display: block;
    position: relative;
    float: left;
    width: 100%;
    text-align: left;
}

#youtube_videos .list-wrap label {
    float: left;
    color: #00BDE8;
    font-size: 12px;
}

#youtube_videos .list-wrap h3 {
    margin-top: 0;
}

#youtube_videos .search-box {
    float: left;
    clear: left;
    width: 100%;
    padding: 0.4em;
    font-size: 12px;
    font-weight: 100;
    color: #555;
}

#youtube_videos .list-count {
    float: left;
    text-align: left;
    padding: 0.5em;
    width: 50%;
    display: inline-block;
    font-size: 12px;
    color: white;
}

#youtube_videos li {
    transition-property: margin, background-color, border-color;
    transition-duration: .4s, .2s, .2s;
    transition-timing-function: ease-in-out, ease, ease;
}

#youtube_videos .empty-item {
    transition-property: opacity;
    transition-duration: 0s;
    transition-delay: 0s;
    transition-timing-function: ease;
}

#youtube_videos .empty .empty-item {
    transition-property: opacity;
    transition-duration: .2s;
    transition-delay: .3s;
    transition-timing-function: ease;
}

#youtube_videos .hiding {
    margin-left: 100%;
    opacity: 0.5;
}

#youtube_videos .hidden {
    display: none;
}

#youtube_videos ul {
    float: left;
    width: 100%;
    margin: 10px 0px;
    padding: 2px 2px 0px 0px;
    position: relative;
    border-top: 1px solid #ddd;
    max-height: 500px;
    overflow-x: hidden;
    overflow-y: scroll;
    background-color: none;
}

#youtube_videos li.in {
    float: left;
    clear: left;
    width: 100%;
    /* margin: 0.2em 0; */
    padding: 0.5em 0.8em;
    list-style: none;
    background-color: none;
    border-left: 5px solid #003842;
    cursor: pointer;
    color: white;
    position: relative;
    z-index: 2;
    font-size: 12px;
    box-sizing: border-box;
}

#youtube_videos li.in.active {
    border-color: #2be7b8;
}

#youtube_videos li.in:hover {
    background-color: #f9f9f9;
    border-color: #00BDE8;
    color: #273d52;
}

#youtube_videos .empty-item {
    background: #fff;
    color: #ddd;
    margin: 0.2em 0;
    padding: 0.5em 0.8em;
    font-style: italic;
    border: none;
    text-align: center;
    visibility: hidden;
    opacity: 0;
    float: left;
    clear: left;
    width: 100%;
}

#youtube_videos .empty .empty-item {
    opacity: 1;
    visibility: visible;
}

#youtube_videos .list-wrap {
    background: none;
    /* float: left;
                  width: 30%;
                  margin: auto;
                  padding: 0px 20px;
                  display: inline-block;
                  box-sizing: border-box; */
    /* border-bottom: 2px solid #aaa; */
}

#youtube_videos .video-wrap {
    padding: 0px;
    /* float: left;
                  width: 65%;
                  margin: auto;
                  display: inline-block; */
}

#youtube_videos .video-wrap iframe {
    box-shadow: 0 1px 1px rgba(0, 0, 0, .04);
    /* border: 2px solid #ddd; */
    width: 446px;
    padding: 0px;
}

@media screen and (max-width: 1024px) {
    #youtube_videos .video-wrap {
        width: 100%;
    }
    #youtube_videos .list-wrap {
        width: 100%;
    }
}

.chatContainer span {
    all: unset;
}

.chatContainer.open {
    right: 0;
}

.chatContainer {
    transition: all 0.3s ease-in-out;
}

.chat.chrome,
.start-group.chrome {
    box-shadow: rgba(0, 18, 46, 0.16) 0px 8px 36px 0px;
}

.chat {
    max-height: calc(100% - 47px);
    display: flex;
    flex-direction: column;
}

.chat,
.start-group {
    pointer-events: auto;
    box-shadow: rgba(0, 18, 46, 0.16) 0px 8px 22px 0px;
    overflow: hidden;
    background-color: white;
}

.chat-header {
    padding: 24px 28px 0px;
    background-image: linear-gradient(135deg, rgba(42, 39, 218, 0.72) 0%, rgba(0, 204, 255, 0.72) 100%);
    position: relative;
    z-index: 4;
    flex: 0 0 auto;
    border-top: none;
}

.chat h2.oneline {
    margin-top: 0px;
    line-height: 22px;
    min-height: 32px;
    font-size: 16px;
}

.chat h2 {
    font-size: 22px;
    font-weight: 600;
    color: currentcolor;
    margin: 4px 0px 0px;
    padding: 0px;
    display: inline-block;
    position: relative;
    max-width: calc(100% - 145px);
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    vertical-align: bottom;
}

.chat h2 .emoji {
    width: 31px;
    height: 31px;
}

.offline-message span.online::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    top: calc(20% - 0px);
    background: rgb(88, 183, 67);
    border-radius: 50%;
    /* left: 130px; */
}

.offline-message span {
    z-index: 2;
    position: relative;
    display: inline-block;
    font-size: 16px;
}

.offline-message {
    /* margin: 18px -28px 0px; */
    color: currentcolor;
    width: calc(100% + 56px);
    /* padding: 14px 50px 7px; */
    padding-top: 14px;
    position: relative;
    background-size: 100% calc(100% + 12px);
    z-index: 1;
    margin-top: -20px;
}

.offline-message span.online {
    /* padding-left: 40px; */
    /* font-size: 8px !important; */
}

#conversation-group {
    padding: 0px 28px;
    padding-right: 0px;
    padding-bottom: 20px;
    width: 100%;
    height: 373px;
    overflow: hidden auto;
    background: rgb(255, 255, 255);
    transition: all 0.3s ease 0s;
    max-height: 373px;
    /* min-height: 160px; */
    flex: 0 1 auto;
}

#conversation-group-user {
    padding: 0px 28px;
    padding-right: 0px;
    padding-bottom: 20px;
    width: 100%;
    height: 373px;
    overflow: hidden auto;
    background: rgb(255, 255, 255);
    transition: all 0.3s ease 0s;
    max-height: 373px;
    /* min-height: 160px; */
    flex: 0 1 auto;
}

#conversation-group-admin,
#conversation-group-admin-company {
    padding-left: 20px;
    padding-right: 15px;
    /* margin-left:15px; */
    /* padding-right: 0px; */
    width: 100%;
    height: 390px;
    overflow: hidden auto;
    background: rgb(255, 255, 255);
    transition: all 0.3s ease 0s;
    max-height: 390px;
    min-height: 160px;
    flex: 0 1 auto;
    /* margin-top: -20px; */
}

.item {
    padding-left: 10px;
    padding-right: 15px;
    width: 100%;
    background: rgb(255, 255, 255);
    transition: all 0.3s ease 0s;
    flex: 0 1 auto;
    height: 70px;
}

.round-box {
    width: 55px;
    height: 55px;
    margin: 5px;
    margin-left: 10px;
    border-radius: 100%;
}

.animated-background {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-name: flash;
    animation-name: flash;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    background: -webkit-linear-gradient(left, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
    background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
    -webkit-background-size: 800px 104px;
    position: relative;
}

.rect1 {
    width: 75%;
    left: 80px;
    margin-top: -55px;
    height: 10px;
}

.rect2 {
    width: 75%;
    float: left;
    left: 80px;
    margin-top: 10px;
    height: 10px;
}

.rect3 {
    width: 75%;
    float: left;
    left: 80px;
    margin-top: 10px;
    height: 10px;
}

.rect4 {
    width: 90%;
    float: left;
    margin-left: 65px;
    margin-top: 15px;
    height: 1px;
    background: rgb(210, 210, 210);
}

.no-clip-path .project-online {
    padding: 14px 28px 20px;
}

.no-clip-path .project-online {
    padding: 14px 28px 20px;
}

.no-clip-path .project-online::after {
    content: "";
    position: absolute;
    width: calc(100% + 10px);
    bottom: -8px;
    left: -5px;
    border-image-source: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNzIgMTUiPgogIDxwYXRoIGQ9Ik0zNDkuOCAxLjRDMzM0LjUuNCAzMTguNSAwIDMwMiAwaC0yLjVjLTkuMSAwLTE4LjQuMS0yNy44LjQtMzQuNSAxLTY4LjMgMy0xMDIuMyA0LjctMTQgLjUtMjggMS4yLTQxLjUgMS42Qzg0IDcuNyA0MS42IDUuMyAwIDIuMnY4LjRjNDEuNiAzIDg0IDUuMyAxMjguMiA0LjEgMTMuNS0uNCAyNy41LTEuMSA0MS41LTEuNiAzMy45LTEuNyA2Ny44LTMuNiAxMDIuMy00LjcgOS40LS4zIDE4LjctLjQgMjcuOC0uNGgyLjVjMTYuNSAwIDMyLjQuNCA0Ny44IDEuNCA4LjQuMyAxNS42LjcgMjIgMS4yVjIuMmMtNi41LS41LTEzLjgtLjUtMjIuMy0uOHoiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==);
    border-image-slice: 0 0 100%;
    border-image-width: 0 0 15px;
    border-image-repeat: stretch;
    border-width: 0px 0px 15px;
    border-bottom-style: solid;
    border-color: initial;
    border-top-style: initial;
    border-left-style: initial;
    border-right-style: initial;
}

.chatContainer .input-group {
    padding-left: 28px;
    padding-right: 48px;
    width: 100%;
    position: relative;
    background: rgb(242, 242, 242);
    z-index: 3;
    flex: 0 0 auto;
}

.chatContainer .input-group .footer-input-wrapper,
.chatContainer .input-group .footer-icons-wrapper {
    transition: all 0.5s ease-in-out 0s;
    opacity: 1;
    transform: translateY(0px);
}

.footer-input-wrapper {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.chatContainer textarea {
    border: 0px;
    width: 100%;
    font-size: 17px;
    margin: 20px 0px 14px;
    resize: none;
    line-height: 24px;
    overflow: hidden;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 0px;
    flex: 1 0 0;
}

.send-icon {
    width: 26px;
    height: 26px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 26px;
    flex: 0 0 26px;
    -webkit-backface-visibility: hidden;
    -webkit-transition: all .3s;
    transition: all .3s;
    cursor: pointer;
}

.chatContainer hr {
    margin: 0px;
    border-width: 0px 0px 1px;
    border-top-style: initial;
    border-right-style: initial;
    border-left-style: initial;
    border-top-color: initial;
    border-right-color: initial;
    border-left-color: initial;
    border-image: initial;
    border-bottom-style: solid;
    border-bottom-color: rgb(219, 223, 230);
}

.send-icon:hover svg path {
    fill: #1775ec;
}

.chatContainer svg {
    width: 24px;
    height: 24px;
}

.chatContainer svg:not(:root) {
    overflow-clip-margin: content-box;
    overflow: hidden;
}

.svgsent svg path {
    fill: #1775ec;
}

.sentText {
    outline: none;
    font-weight: normal;
    transition: margin 0.28s ease-in-out 0s;
    color: rgb(62, 62, 62);
}

.sentTextSpan {
    border-radius: 10px !important;
    font-size: 12px !important;
    float: right !important;
    padding: 10px !important;
    /* background: #1775ec !important; */
    background: #dcebff !important;
    max-width: 90%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
}

.botText {
    outline: none;
    transition: margin 0.28s ease-in-out 0s;
    color: rgb(80, 80, 80);
}

.botTextSpan {
    border-radius: 10px !important;
    font-size: 12px !important;
    float: left !important;
    padding: 10px !important;
    background: rgb(248, 249, 252);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
}

.bxOther:hover {
    color: #1775ec !important;
    cursor: pointer;
}

.viewChatMessages:hover {
    background-color: #f1f1f1;
}

.viewChatMessagesActive {
    background-color: #f1f1f1;
}

.navtabs {
    display: flex;
    justify-content: center;
    margin-top: 0px;
    background: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    /* border-radius: 8px; */
    /* padding: 10px 0px; */
    position: relative;
}

.navtab {
    margin: 0 0px;
    padding: 10px 20px;
    cursor: pointer;
    color: #333;
    transition: color 0.3s;
    width: 100%;
    text-align: center;
}

.navtab:hover {
    color: #007BFF;
}

.navtab.activeChatPortal {
    color: #007BFF;
    font-weight: 600;
}

.underline {
    position: absolute;
    bottom: 0;
    height: 2px;
    background: #007BFF;
    transition: left 0.3s ease, width 0.3s ease;
}

.content {
    display: none;
    /* padding: 100px 20px 20px; */
    max-width: 800px;
}

.content.activeChatPortal {
    display: block;
}

.has-search-right {
    position: relative;
    width: 100%;
    /* height:100px; */
}

.has-search-right .form-control {
    padding-right: 2.375rem;
    /* height: 40px; */
    padding: 0.50em;
    border: 1px solid #ddd;
    border-radius: 20px;
    color: rgb(58, 58, 58);
    font-weight: 500;
    font-size: 13px;
    margin-top: 20px;
}

.has-search-right .form-control-feedback {
    position: absolute;
    top: 27;
    right: 0;
    z-index: 2;
    display: block;
    width: 2.5em;
    /* height: 100px; */
    line-height: 8.375rem;
    text-align: center;
    color: rgb(39, 39, 39);
}

.has-search-right i.bxs-send {
    display: inline-block;
    border-radius: 60px;
    padding: 0.3em 0.3em;
    border: 1px solid rgb(163, 163, 163);
    /* background: #1775ec; */
    /* color: rgb(39, 39, 39); */
}


/* .l_c_h_admin {
    width: 747px;
    position: fixed;
    bottom: 0;
    right: 0px;
    background: #fff;
    border-radius: 3px;
    z-index: 5000;
    display: block;
    border-top-right-radius: 16px;
    border-top-left-radius: 16px;
}

.l_c_h_admin .c_h {
    cursor: pointer;
    border-radius: 0px;
    border-bottom: none;
    background: linear-gradient(135deg, rgb(42, 39, 218) 0%, rgb(0, 204, 255) 100%);
    line-height: 34px;
    border-top-right-radius: 16px;
    border-top-left-radius: 16px;
}

.l_c_h_admin .left_c {
    color: #ebebeb;
    width: 150px;
    font-size: 16px;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h_admin .right_c {
    text-align: center;
    background: rgb(232, 22, 22);
    line-height: 36px;
    border-top-left-radius: 16px;
}

.l_c_h_admin .right_c_right {
    text-align: center;
    background: none;
    line-height: 36px;
    border-top-left-radius: 0px;
    border-top-right-radius: 16px;
}

.l_c_h_admin .right_c a {
    color: #ebebeb;
    border-radius: 3px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    cursor: pointer !important;
    font-size: 16px;
    line-height: normal !important;
    margin-top: 0 !important;
    padding: 1px 0px !important;
    text-align: center !important;
    text-decoration: none;
    font-weight: 600;
}

.l_c_h_admin .clear {
    clear: both;
}

.l_c_h_admin .chat_container .no_provider {
    text-align: left;
    color: #5E5652;
    font-size: 12px;
    width: 300px;
    padding: 5px;
    font-family: Arial, Helvetica, sans-serif;
    margin-left: 5px;
}

.l_c_h_admin .chat_container .footer_c {
    text-align: left;
    color: #5E5652;
    font-size: 12px;
    margin-left: 10px;
    margin-bottom: 10px;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h_admin .chat_container .footer_c a {
    text-decoration: underline;
    color: #777;
    font-size: 11px;
}

.l_c_h_admin .chat_container .chat_entry {
    margin: 10px;
    margin-top: 0px;
}

.l_c_h_admin .chat_container .chat_entry p {
    margin-top: 10px;
    margin-bottom: 10px;
}

.l_c_h_admin .chat_container .chat_entry h4 {
    text-align: left;
    color: #1A1A1A;
    font-weight: 400;
    font-size: 16px;
    margin-top: 0px;
}

.l_c_h_admin .chat_container .chat_entry input[type="text"] {
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #999;
    font-size: 13px;
    padding: 8px 8px;
    margin-bottom: 5px;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h_admin .chat_container .chat_entry input[type="text"]:focus {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    outline: 0 none;
    border-color: #66afe9;
}

.l_c_h_admin .chat_container .chat_entry input[type="submit"] {
    padding: 5px 12px;
    margin-bottom: 0;
    font-size: 12px;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 0px;
    color: #fff;
    background-color: #2dc3e8 !important;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h_admin .chat_container .chat_entry input[type="submit"]:hover {
    background-color: #C64545;
}

.l_c_h_admin .form-error {
    display: none;
}

.l_c_h_admin .chat_message {
    height: 250px;
    overflow-y: scroll;
    padding: 10px;
    border-bottom: 1px solid #222222;
    padding-top: 10px;
}

.l_c_h_admin .chat_message .message_contain {
    margin: 5px;
    background: #FCF8E2;
    padding: 5px;
}

.l_c_h_admin .chat_message .user_message {
    background: #F5F5F5;
}

.l_c_h_admin .chat_message .message_contain .header_image {
    float: left;
    width: 50px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.l_c_h_admin .chat_message .message_contain .chat_mess {
    font-size: 13px;
    color: #444444;
    margin-top: 0px;
}

.l_c_h_admin .chat_message .message_contain .chat_date {
    color: #777;
    font-size: 11px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.l_c_h_admin .chat_text_area {
    margin: 5px;
}

.l_c_h_admin .chat_text_area .messag_send {
    width: 100%;
    resize: none;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #555;
    padding: 5px;
    font-size: 13px;
    height: 35px;
}

.l_c_h_admin .chat_text_area .messag_send:focus {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    outline: 0 none;
    border-color: #66afe9;
}

.message-count {
    color: #fff;
    font-size: 10px;
    font-family: Arial, san-serif;
    font-weight: bold;
}

.badge {
    position: absolute;
    right: 0px;
    top: -12px;
    z-index: 10;
}

.messages img {
    width: 15px;
    height: auto;
}

.messages {
    width: 31px;
    height: 19px;
    background-image: url(https://i.imgur.com/aoXZqPc.gif);
    background-position: 0 0;
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: top;
    margin: 4%;
    position: relative;
}

.badge {
    text-align: center;
    position: relative;
    right: -10.8px;
    float: right;
    display: block;
}

.message-count {
    position: relative;
    display: block;
    font: bold 14px/13px Helvetica, Verdana, Tahoma;
    background: radial-gradient(5px -9px, circle, white 8%, #ed2324 26px);
    background: -moz-radial-gradient(5px -9px, circle, white 8%, #ed2324 26px);
    background: -ms-radial-gradient(5px -9px, circle, white 8%, #ed2324 26px);
    background: -o-radial-gradient(5px -9px, circle, white 8%, #ed2324 26px);
    background: -webkit-radial-gradient(5px -9px, circle, white 8%, #ed2324 26px);
    background-color: #ed2324;
    min-width: 18px;
    border-radius: 50%;
    padding: 3px;
    text-align: center;
    margin: 0;
    top: 1px;
} */








* {
    box-sizing: border-box;
}

/* =========================================
   Base Shell
   ========================================= */
.robochat-shell {
    position: fixed;
    right: 0;
    bottom: 0;
    width: 860px;
    max-width: calc(100vw - 24px);
    height: 620px;
    max-height: calc(100vh - 24px);
    background: #f4f7fb;
    border: 1px solid #d9e2ef;
    border-bottom: none;
    border-top-left-radius: 18px;
    border-top-right-radius: 18px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.25);
    overflow: hidden;
    z-index: 9999;
    font-family: Arial, Helvetica, sans-serif;
    transition: height 0.35s ease, transform 0.35s ease;
}

.robochat-shell.minimized {
    height: 64px;
}

.robochat-shell:not(.minimized) {
    animation: robochat-pop 0.25s ease;
}

.robochat-shell.has-unread .robochat-toggle-btn {
    background: #ef4444;
    border: none;
    color: #fff;
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.45);
    animation: robochatTogglePulse 1.5s ease-in-out infinite;
}

.robochat-shell.has-unread .robochat-toggle-icon {
    color: #fff;
}

/* =========================================
   Top Bar
   ========================================= */
.robochat-bar {
    height: 64px;
    background: linear-gradient(135deg, rgb(42, 39, 218) 0%, rgb(0, 204, 255) 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
}

.robochat-bar-left {
    display: flex;
    align-items: center;
    gap: 12px;
}

.robochat-bar-right {
    display: flex;
    align-items: center;
}

.robochat-toggle-btn {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    border-radius: 10px;
    cursor: pointer;
    font-size: 24px;
    line-height: 1;
    padding: 0;
}

.robochat-toggle-icon {
    color: #fff;
}

.robochat-expand-btn {
    width: 36px;
    height: 36px;
    margin-right: 10px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    border-radius: 10px;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.robochat-expand-btn:hover {
    background: rgba(255, 255, 255, 0.24);
}

.robochat-shell.expanded {
    top: 12px;
    right: 12px;
    bottom: 12px;
    width: min(1280px, calc(100vw - 24px));
    max-width: calc(100vw - 24px);
    height: calc(100vh - 24px);
    max-height: calc(100vh - 24px);
    border-radius: 18px;
    border-bottom: 1px solid #d9e2ef;
}

.robochat-shell.expanded .robochat-sidebar {
    width: 360px;
    min-width: 360px;
}

.robochat-shell.expanded .robochat-message-bubble-wrap {
    max-width: 68%;
}

@media (max-width: 980px) {
    .robochat-shell.expanded {
        top: 8px;
        right: 8px;
        bottom: 8px;
        width: calc(100vw - 16px);
        max-width: calc(100vw - 16px);
        height: calc(100vh - 16px);
        max-height: calc(100vh - 16px);
    }

    .robochat-shell.expanded .robochat-sidebar {
        width: 320px;
        min-width: 320px;
    }
}

@media (max-width: 768px) {
    .robochat-shell.expanded {
        top: 0;
        right: 0;
        bottom: 0;
        width: 100vw;
        max-width: 100vw;
        height: 100vh;
        max-height: 100vh;
        border-radius: 0;
    }

    .robochat-shell.expanded .robochat-sidebar {
        width: 44%;
        min-width: 260px;
    }

    .robochat-shell.expanded .robochat-message-bubble-wrap {
        max-width: 84%;
    }
}

.robochat-shell.minimized .robochat-toggle-btn {
    background: #e53935;
    border: 1px solid #fff;
}

.robochat-shell.minimized .robochat-toggle-icon {
    color: #fff;
}

.robochat-bar-title {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.1;
}

.robochat-bar-subtitle {
    font-size: 12px;
    opacity: 0.92;
    margin-top: 3px;
}

.robochat-bar-badge {
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: #ef4444;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
}

/* =========================================
   Body Layout
   ========================================= */
.robochat-body {
    display: flex;
    width: 100%;
    height: calc(100% - 64px);
    opacity: 1;
    transform: translateY(0);
    transition: all 0.25s ease;
}

.robochat-shell.minimized .robochat-body {
    opacity: 0;
    transform: translateY(20px);
    pointer-events: none;
}

/* =========================================
   Sidebar
   ========================================= */
.robochat-sidebar {
    width: 330px;
    min-width: 330px;
    background: #f6f6f6;
    border-right: 1px solid #d3dbe7;
    display: flex;
    flex-direction: column;
}

.robochat-sidebar-header {
    padding: 16px 14px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.robochat-sidebar-heading h2 {
    margin: 0;
    font-size: 20px;
    color: #172b4d;
}

.robochat-sidebar-heading p {
    margin: 4px 0 0;
    font-size: 12px;
    color: #667085;
}

.robochat-refresh-btn {
    width: 36px;
    height: 36px;
    border: 1px solid #d6deea;
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
    font-size: 18px;
    color: #344054;
}

.robochat-search-wrap {
    padding: 0 14px 12px;
}

.robochat-search-input {
    width: 100%;
    height: 42px;
    border: 1px solid #d7dfea;
    border-radius: 999px;
    padding: 0 14px;
    outline: none;
    font-size: 14px;
    background: #fff;
}

.robochat-filter-tabs {
    display: flex;
    gap: 8px;
    padding: 0 14px 12px;
    border-bottom: 1px solid #edf2f7;
    flex-wrap: wrap;
}

.robochat-filter-tab {
    border: 1px solid #d7dfea;
    background: #fff;
    color: #475467;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.robochat-filter-tab.active {
    background: #1775ec;
    border-color: #1775ec;
    color: #fff;
}

.robochat-conversation-list {
    flex: 1;
    overflow-y: auto;
    background: transparent;
}

.robochat-conversation-item {
    display: flex;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid #eff3f8;
    cursor: pointer;
    transition: background 0.2s ease;
}

.robochat-conversation-item:hover {
    background: #f8fbff;
}

.robochat-conversation-item.active {
    background: #eef5ff;
    border-left: 4px solid #1775ec;
    padding-left: 10px;
}

.robochat-conversation-item.has-unread {
    background: #f9fbff;
    border-left: 3px solid #3b82f6;
    padding-left: 11px;
}

.robochat-conversation-avatar {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    border-radius: 50%;
    background: linear-gradient(135deg, #2a27da 0%, #00ccff 100%);
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.robochat-conversation-body {
    flex: 1;
    min-width: 0;
}

.robochat-conversation-top {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    margin-bottom: 2px;
}

.robochat-conversation-name-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.robochat-conversation-name {
    font-size: 14px;
    font-weight: 700;
    color: #172b4d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.robochat-conversation-item.has-unread .robochat-conversation-name {
    font-weight: 800;
    color: #111827;
}

.robochat-unread-dot {
    background: #ef4444;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    min-width: 18px;
    height: 18px;
    padding: 0 6px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.robochat-conversation-time {
    font-size: 11px;
    color: #667085;
    white-space: nowrap;
}

.robochat-conversation-sub {
    font-size: 12px;
    color: #667085;
    margin-bottom: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.25;
}

.robochat-conversation-preview {
    font-size: 12px;
    color: #475467;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.25;
}

.robochat-conversation-preview.unread-preview {
    font-weight: 700;
    color: #1d4ed8;
}

.robochat-conversation-badges {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.robochat-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    padding: 3px 8px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.robochat-badge-warning {
    background: #fff4d6;
    color: #9a5b00;
    border: 1px solid #ffd98a;
}

.robochat-badge-info {
    background: #e8f3ff;
    color: #0b63b6;
    border: 1px solid #b9dcff;
}

.robochat-badge-danger {
    background: #ffe8e8;
    color: #c62828;
    border: 1px solid #ffc1c1;
}

.robochat-badge-muted {
    background: #eef1f5;
    color: #64748b;
    border: 1px solid #d7dde6;
}

.robochat-badge-unread {
    background: #e8f1ff;
    color: #175cd3;
    border: 1px solid #bfd6ff;
}

.robochat-badge-open {
    background: #e8fff2;
    color: #067647;
}

.robochat-badge-closed {
    background: #f2f4f7;
    color: #667085;
}

/* =========================================
   Chat Panel
   ========================================= */
.robochat-chat-panel {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: #f6f8fc;
    overflow: hidden;
}

.robochat-chat-header {
    height: 74px;
    background: #fff;
    border-bottom: 1px solid #e4eaf3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 18px;
}

.robochat-chat-header-left {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    flex: 1;
    overflow: hidden;
}

.robochat-chat-header-right {
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.robochat-avatar {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2a27da 0%, #00ccff 100%);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex-shrink: 0;
}

.robochat-chat-meta {
    min-width: 0;
}

.robochat-chat-meta h3 {
    margin: 0;
    font-size: 16px;
    color: #172b4d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.robochat-chat-meta p {
    margin: 4px 0 0;
    font-size: 12px;
    color: #667085;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.robochat-secondary-btn,
.robochat-danger-btn,
.robochat-send-btn {
    border: none;
    border-radius: 10px;
    padding: 10px 14px;
    cursor: pointer;
    font-size: 13px;
    font-weight: 700;
}

.robochat-secondary-btn {
    background: #e8f1ff;
    color: #175cd3;
}

.robochat-danger-btn {
    background: #fee4e2;
    color: #d92d20;
}

.robochat-send-btn {
    background: #1775ec;
    color: #fff;
    min-width: 92px;
    height: 46px;
    flex-shrink: 0;
}

.robochat-send-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* =========================================
   Message Area
   ========================================= */
.robochat-message-area {
    flex: 1;
    min-width: 0;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 14px 16px;
    background-color: #f5f5f5;
    background-image: url("https://app.schoolrobot.net/LIBRARY/images/images/robotchat-background.png");
    background-repeat: repeat;
    background-position: center;
    background-size: 420px auto;
    background-blend-mode: normal;
}

.robochat-empty-state,
.robochat-empty-chat {
    text-align: center;
    color: #667085;
    padding: 40px 20px;
}

.robochat-empty-chat {
    display: flex;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.robochat-empty-chat-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #eef5ff;
    color: #1775ec;
    font-size: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
}

.robochat-date-divider {
    text-align: center;
    margin: 16px 0 12px;
}

.robochat-date-divider span {
    display: inline-block;
    background: #e9eef6;
    color: #475467;
    font-size: 11px;
    font-weight: 700;
    border-radius: 999px;
    padding: 6px 12px;
}

.robochat-message-row {
    display: flex;
    width: 100%;
    margin-bottom: 6px;
    cursor: pointer;
}

.robochat-message-row.parent {
    justify-content: flex-start;
}

.robochat-message-row.staff {
    justify-content: flex-end;
}

.robochat-message-row.new-message {
    animation: robochatMessageFadeIn 0.25s ease;
}

.robochat-message-row.message-just-arrived {
    animation: robochatJustArrived 0.35s ease;
}

.robochat-message-row:hover .robochat-message-bubble-wrap {
    transform: translateY(-1px);
    transition: transform 0.15s ease;
}

.robochat-message-row.is-reply-target .robochat-message-bubble-wrap {
    outline: 2px solid rgba(37, 99, 235, 0.35);
    outline-offset: 2px;
    border-radius: 12px;
}

.robochat-message-bubble-wrap {
    display: inline-flex;
    flex-direction: column;
    width: fit-content;
    max-width: 72%;
    min-width: 44px;
}

.robochat-message-row.parent .robochat-message-bubble-wrap {
    align-items: flex-start;
    margin-right: auto;
}

.robochat-message-row.staff .robochat-message-bubble-wrap {
    align-items: flex-end;
    margin-left: auto;
}

.robochat-message-sender {
    font-size: 10px;
    font-weight: 700;
    color: #667085;
    margin-bottom: 2px;
    padding: 0 2px;
    opacity: 0.72;
    text-align: left;
    width: 100%;
}

.robochat-message-bubble {
    position: relative;
    display: inline-block;
    width: fit-content;
    max-width: 100%;
    min-width: 0;
    padding: 5px 6px 4px;
    border-radius: 12px;
    box-sizing: border-box;
    word-break: break-word;
    overflow-wrap: anywhere;
    white-space: normal;
}

.robochat-message-row.parent .robochat-message-bubble {
    background: #ffffff;
    color: #1f2937;
    border: 1px solid #e7edf5;
    border-bottom-left-radius: 4px;
}

.robochat-message-row.staff .robochat-message-bubble {
  background: #d9fdd3;
    color: #1f2937;
    border: 1px solid #cfeec8;
    border-bottom-right-radius: 4px;
}

.robochat-message-text {
    display: inline;
    font-size: 13px;
    line-height: 1.38;
    white-space: pre-wrap;
    word-break: break-word;
    overflow-wrap: anywhere;
    text-align: left;
    color: inherit;
}

.robochat-message-meta {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 3px;
    margin-top: 2px;
    margin-left: 6px;
    font-size: 10px;
    line-height: 1;
    color: #667085;
    white-space: nowrap;
    vertical-align: bottom;
}


.robochat-message-caption {
    font-size: 12px;
    line-height: 1.3;
    word-break: break-word;
    overflow-wrap: anywhere;
    text-align: left;
    color: inherit;
    opacity: 0.95;
    margin-top: 3px;
}

/* =========================================
   Reply Preview Inside Bubble
   ========================================= */
.robochat-inline-reply-preview {
    margin-bottom: 4px;
    padding: 5px 7px;
    border-left: 3px solid #3b82f6;
    background: #eef4ff;
    border-radius: 7px;
}

.robochat-inline-reply-label {
    font-size: 10px;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 1px;
}

.robochat-inline-reply-text {
    font-size: 11px;
    line-height: 1.25;
    opacity: 0.92;
    word-break: break-word;
    max-height: 28px;
    overflow: hidden;
}

/* =========================================
   Message Footer / Time / Status
   ========================================= */
.robochat-message-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    margin-top: 3px;
    width: 100%;
}

.robochat-message-time {
    font-size: 10px;
    color: #667085;
    opacity: 0.72;
    white-space: nowrap;
    text-align: right;
}

.robochat-message-status {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    margin-left: 2px;
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
    opacity: 1;
}

.robochat-message-status-icon,
.robochat-message-status-label {
    font-size: 11px;
    line-height: 1;
}

/* Default staff-side ticks */
.robochat-message-row.staff .robochat-message-status {
    color: #6b7280;
}

/* Internal read state for parent messages seen by staff */
.robochat-message-row.parent .robochat-message-status {
    color: #7b8794;
}

/* Blue double ticks */
.robochat-message-status.is-read,
.robochat-message-status.is-read .robochat-message-status-icon {
    color: #34b7f1;
    font-weight: 800;
}

/* Grey double ticks / sent tick */
.robochat-message-status.is-delivered,
.robochat-message-status.is-delivered .robochat-message-status-icon,
.robochat-message-status.is-sent,
.robochat-message-status.is-sent .robochat-message-status-icon {
    color: #7c8a97;
    font-weight: 700;
}

/* Waiting states */
.robochat-message-status.is-processing,
.robochat-message-status.is-processing .robochat-message-status-icon,
.robochat-message-status.is-queued,
.robochat-message-status.is-queued .robochat-message-status-icon {
    color: #a16207;
}

/* Failed */
.robochat-message-status.is-failed,
.robochat-message-status.is-failed .robochat-message-status-icon {
    color: #dc2626;
    font-weight: 800;
}

/* =========================================
   WhatsApp-like Interactive Chips
   ========================================= */
.robochat-wa-chip {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 6px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.15;
    word-break: break-word;
    background: #f3f4f6;
    color: #111827;
    border: 1px solid #e5e7eb;
}

/* =========================================
   Message Media
   ========================================= */
.robochat-message-media-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    width: fit-content;
    max-width: 100%;
}

.robochat-media-link-wrap {
    display: inline-block;
    text-decoration: none;
}

.robochat-chat-image {
    width: 260px;
    max-width: 100%;
    max-height: 320px;
    object-fit: cover;
    border-radius: 6px;
    display: block;
    background: #f8fafc;
    border: 1px solid rgba(0, 0, 0, 0.08);
}

.robochat-chat-video {
    width: 260px;
    max-width: 100%;
    max-height: 320px;
    border-radius: 6px;
    display: block;
    background: #000;
    border: 1px solid rgba(0, 0, 0, 0.08);
}

.robochat-chat-audio {
    width: 190px;
    max-width: 100%;
    display: block;
}

.robochat-message-media-image-card,
.robochat-message-media-video-card,
.robochat-message-media-audio-card,
.robochat-message-media-document-card {
    width: fit-content;
    max-width: 100%;
}

.robochat-message-media-document-card {
    width: auto;
    max-width: 200px;
    min-width: 0;
}

.robochat-chat-document-link {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    border-radius: 10px;
    padding: 8px 10px;
    background: #f8fafc;
    color: #1f2937;
    border: 1px solid #e5e7eb;
}

.robochat-chat-document-link:hover {
    text-decoration: none;
    opacity: 0.95;
}

.robochat-chat-document-icon {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e8eefc;
    font-size: 18px;
    flex-shrink: 0;
}

.robochat-chat-document-meta {
    min-width: 0;
    flex: 1;
}

.robochat-chat-document-title {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    word-break: break-word;
}

.robochat-chat-document-subtitle {
    font-size: 10px;
    opacity: 0.75;
    margin-top: 2px;
}

/* =========================================
   Composer
   ========================================= */
.robochat-composer {
    background: #fff;
    border-top: 1px solid #e4eaf3;
    padding: 14px 16px;
}

.robochat-message-input {
    width: 100%;
    min-height: 46px;
    max-height: 140px;
    overflow-y: auto;
    border: 1px solid #d7dfea;
    border-radius: 14px;
    background: #fff;
    padding: 12px 14px;
    outline: none;
    font-size: 14px;
    line-height: 1.4;
}

.robochat-message-input:empty:before {
    content: attr(data-placeholder);
    color: #98a2b3;
}

.robochat-composer-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
}

.robochat-composer-row {
    display: flex;
    align-items: flex-end;
    gap: 10px;
}

.robochat-composer-row .robochat-message-input {
    flex: 1;
    min-height: 46px;
}

.robochat-composer-row .robochat-send-btn {
    height: 46px;
}


/* =========================================
   Voice Recording Preview
   ========================================= */
.robochat-recording-bar {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 10px 0;
    padding: 10px 12px;
    border-left: 4px solid #ef4444;
    background: #fff5f5;
    border-radius: 10px;
}

.robochat-recording-left {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
}

.robochat-recording-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #ef4444;
    flex-shrink: 0;
    animation: robochatRecordingPulse 1s ease-in-out infinite;
}

.robochat-recording-text {
    font-size: 13px;
    font-weight: 700;
    color: #b42318;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.robochat-recording-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.robochat-recording-cancel,
.robochat-recording-send {
    width: 34px;
    height: 34px;
    border: none;
    border-radius: 999px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.robochat-recording-cancel {
    background: #fee4e2;
    color: #d92d20;
}

.robochat-recording-send {
    background: #e8f1ff;
    color: #175cd3;
}

.robochat-recording-cancel:hover,
.robochat-recording-send:hover {
    filter: brightness(0.98);
}

@keyframes robochatRecordingPulse {
    0% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.45; transform: scale(0.9); }
    100% { opacity: 1; transform: scale(1); }
}

/* =========================================
   Reply Preview Above Composer
   ========================================= */
.robochat-reply-preview {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 10px 0;
    padding: 10px 12px;
    border-left: 4px solid #2563eb;
    background: #f5f9ff;
    border-radius: 10px;
}

.robochat-reply-preview-inner {
    min-width: 0;
    flex: 1;
}

.robochat-reply-preview-label {
    font-size: 12px;
    font-weight: 700;
    color: #2563eb;
    margin-bottom: 4px;
    line-height: 1.2;
}

.robochat-reply-preview-text {
    font-size: 13px;
    color: #334155;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.35;
}

.robochat-reply-preview-close {
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    padding: 0 4px;
    border-radius: 6px;
}

.robochat-reply-preview-close:hover {
    background: rgba(0, 0, 0, 0.05);
    color: #0f172a;
}

/* =========================================
   Media Attachment Preview
   ========================================= */
.robochat-media-preview {
    display: none;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 10px 0;
    padding: 12px;
    border-left: 4px solid #16a34a;
    background: #f2fff7;
    border-radius: 10px;
}

.robochat-media-preview-content {
    flex: 1;
    min-width: 0;
}

.robochat-media-preview-inner,
.robochat-media-preview-body {
    min-width: 0;
}

.robochat-media-preview-label {
    font-size: 12px;
    font-weight: 700;
    color: #15803d;
    margin-bottom: 8px;
    line-height: 1.2;
}

.robochat-media-preview-body {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.robochat-media-preview-card {
    position: relative;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding-right: 28px;
}

.robochat-media-preview-meta {
    min-width: 0;
    flex: 1;
}

.robochat-media-preview-name {
    font-size: 13px;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 4px;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}

.robochat-media-preview-type {
    font-size: 12px;
    color: #64748b;
}

.robochat-media-preview-image {
    width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 10px;
    border: 1px solid #dbe7df;
    background: #fff;
    display: block;
}

.robochat-media-preview-video {
    width: 180px;
    max-width: 100%;
    max-height: 120px;
    border-radius: 10px;
    background: #000;
    display: block;
}

.robochat-media-preview-audio {
    width: 220px;
    max-width: 100%;
    display: block;
}

.robochat-media-preview-file {
    align-items: center;
}

.robochat-media-preview-file-icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: #e8f1ff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.robochat-media-preview-close,
.robochat-media-item-remove {
    border: none;
    background: transparent;
    color: #64748b;
    cursor: pointer;
    border-radius: 6px;
}

.robochat-media-preview-close {
    font-size: 22px;
    line-height: 1;
    padding: 0 4px;
}

.robochat-media-item-remove {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 18px;
    line-height: 1;
    padding: 2px 4px;
}

.robochat-media-preview-close:hover,
.robochat-media-item-remove:hover {
    background: rgba(0, 0, 0, 0.05);
    color: #0f172a;
}

/* =========================================
   Attachment Button
   ========================================= */
.robochat-attach-btn {
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    border: 1px solid #d7dfea;
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    font-size: 20px;
    line-height: 1;
}

.robochat-attach-btn:hover {
    background: #f5f9ff;
    border-color: #b8c7dd;
}

.robochat-attach-btn:disabled {
    opacity: 0.6;
    cursor: wait;
}

/* =========================================
   Responsive
   ========================================= */
@media (max-width: 980px) {
    .robochat-message-bubble-wrap {
        max-width: 78%;
    }
}

@media (max-width: 768px) {
    .robochat-composer-row {
        align-items: stretch;
    }

    .robochat-attach-btn,
    .robochat-composer-row .robochat-send-btn {
        height: 44px;
    }

    .robochat-message-bubble-wrap {
        max-width: 82%;
    }

     .robochat-chat-image,
    .robochat-chat-video,
    .robochat-chat-audio {
        width: 100%;
        max-width: 240px;
    }
}

/* =========================================
   Animations
   ========================================= */
@keyframes robochatJustArrived {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes robochatMessageFadeIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes robochatTogglePulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.45);
    }
    50% {
        transform: scale(1.08);
        box-shadow: 0 0 0 9px rgba(239, 68, 68, 0);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0);
    }
}

@keyframes robochat-pop {
    from {
        transform: translateY(20px) scale(0.98);
        opacity: 0.8;
    }
    to {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
}

.robochat-message-row.staff.is-temporary .robochat-message-bubble {
    animation: robochatBubbleIn 0.2s ease-out;
}

@keyframes robochatBubbleIn {
    0% {
        opacity: 0;
        transform: translateY(8px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.robochat-conversation-preview-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 2px;
    min-width: 0;
}

.robochat-conversation-preview-row .robochat-conversation-preview {
    flex: 1;
    min-width: 0;
}

.robochat-conversation-preview-row .robochat-badge {
    flex-shrink: 0;
    margin-top: 0;
}


.robochat-voice-btn,
.robochat-send-btn {
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.robochat-send-btn {
    min-width: 46px;
    background: #1775ec;
    color: #fff;
}

.robochat-voice-btn {
    border: 1px solid #d7dfea;
    background: #fff;
    color: #344054;
    cursor: pointer;
}

.robochat-voice-btn:hover {
    background: #f5f9ff;
    border-color: #b8c7dd;
}

.robochat-send-btn svg,
.robochat-voice-btn svg {
    width: 20px;
    height: 20px;
    display: block;
}




.robochat-media-preview-video-wrap {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.robochat-media-preview-video-wrap.is-loading .robochat-media-preview-video {
    opacity: 0.25;
    pointer-events: none;
    filter: blur(1px);
}

.robochat-media-preview-loader {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(2px);
    z-index: 2;
}

.robochat-media-preview-spinner {
    width: 32px;
    height: 32px;
    border: 3px solid rgba(23, 117, 236, 0.18);
    border-top-color: #1775ec;
    border-radius: 50%;
    animation: robochatSpin 0.8s linear infinite;
}

.robochat-media-preview-loader-text {
    font-size: 12px;
    font-weight: 700;
    color: #1f2937;
}

@keyframes robochatSpin {
    to {
        transform: rotate(360deg);
    }
}





.robochat-media-preview-card.is-video {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-right: 28px;
}

.robochat-media-preview-card.is-video .robochat-media-preview-meta {
    width: 100%;
}

.robochat-media-preview-card.is-video .robochat-media-preview-video-wrap {
    width: auto;
    max-width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
}


.robochat-media-preview-card.is-video .robochat-media-preview-video {
    width: 180px;
    max-width: 100%;
    height: auto;
    display: block;
    border-radius: 12px;
    background: #d1d5db;
}

.robochat-parent-typing-row {
    pointer-events: none;
}

.robochat-typing-bubble {
    min-width: 48px;
    min-height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.robochat-typing-dot {
    width: 6px;
    height: 6px;
    background: #9ca3af;
    border-radius: 999px;
    display: inline-block;
    animation: robochatTypingPulse 1.1s infinite ease-in-out;
}

.robochat-typing-dot:nth-child(2) {
    animation-delay: 0.15s;
}

.robochat-typing-dot:nth-child(3) {
    animation-delay: 0.3s;
}

@keyframes robochatTypingPulse {
    0%, 80%, 100% {
        opacity: 0.35;
        transform: translateY(0);
    }

    40% {
        opacity: 1;
        transform: translateY(-3px);
    }
}

.robochat-header-status-badge {
    margin-left: 8px;
    vertical-align: middle;
    transform: translateY(-1px);
}

.robochatChatSubtitle .robochat-header-status-badge,
#robochatChatSubtitle .robochat-header-status-badge {
    display: inline-flex;
}

/* =========================================================
   RoboChat Shell Refresh · Framework7 Host Ready
   Shell-only polish, smaller minimized bar
   ========================================================= */

/* Main floating shell */
.robochat-shell {
    right: 18px !important;
    bottom: 18px !important;
    width: min(920px, calc(100vw - 36px)) !important;
    height: min(680px, calc(100vh - 36px)) !important;
    max-width: calc(100vw - 36px) !important;
    max-height: calc(100vh - 36px) !important;
    background: rgba(248, 250, 252, 0.98) !important;
    border: 1px solid rgba(203, 213, 225, 0.9) !important;
    border-radius: 22px 22px 0 0 !important;
    box-shadow:
        0 24px 70px rgba(15, 23, 42, 0.24),
        0 8px 24px rgba(37, 99, 235, 0.08) !important;
    overflow: hidden !important;
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    transition:
        height 0.28s ease,
        width 0.28s ease,
        right 0.28s ease,
        bottom 0.28s ease,
        border-radius 0.28s ease,
        box-shadow 0.28s ease !important;
}

/* Minimized state: smaller and less intrusive */
.robochat-shell.minimized {
    width: min(420px, calc(100vw - 28px)) !important;
    height: 46px !important;
    right: 16px !important;
    bottom: 12px !important;
    border-radius: 999px !important;
    border-bottom: 1px solid rgba(203, 213, 225, 0.9) !important;
    box-shadow:
        0 12px 34px rgba(15, 23, 42, 0.18),
        0 4px 14px rgba(37, 99, 235, 0.08) !important;
}

/* Expanded/full view */
.robochat-shell.expanded {
    top: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    width: min(1240px, calc(100vw - 28px)) !important;
    height: calc(100vh - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    max-height: calc(100vh - 28px) !important;
    border-radius: 24px !important;
    border-bottom: 1px solid rgba(203, 213, 225, 0.9) !important;
}

/* Top bar: lighter, premium, no heavy deep-blue block */
.robochat-bar {
    height: 54px !important;
    min-height: 54px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.96)) !important;
    color: #0f172a !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.95) !important;
    padding: 0 14px !important;
}

/* Smaller bar when minimized */
.robochat-shell.minimized .robochat-bar {
    height: 46px !important;
    min-height: 46px !important;
    border-bottom: none !important;
    padding: 0 10px 0 8px !important;
}

/* Bar layout */
.robochat-bar-left {
    gap: 10px !important;
    min-width: 0 !important;
}

.robochat-bar-right {
    gap: 8px !important;
    align-items: center !important;
}

/* Title typography */
.robochat-bar-title-wrap {
    min-width: 0 !important;
}

.robochat-bar-title {
    color: #0f172a !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.01em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.robochat-bar-subtitle {
    color: #64748b !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    margin-top: 2px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Hide subtitle when minimized to reduce height/visual noise */
.robochat-shell.minimized .robochat-bar-subtitle {
    display: none !important;
}

.robochat-shell.minimized .robochat-bar-title {
    font-size: 13px !important;
}

/* Toggle/expand buttons */
.robochat-toggle-btn,
.robochat-expand-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(203, 213, 225, 0.9) !important;
    background: rgba(241, 245, 249, 0.95) !important;
    color: #0f172a !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.85),
        0 4px 12px rgba(15, 23, 42, 0.06) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    padding: 0 !important;
    line-height: 1 !important;
    transition:
        transform 0.14s ease,
        background 0.14s ease,
        box-shadow 0.14s ease !important;
}

.robochat-toggle-btn:hover,
.robochat-expand-btn:hover {
    background: rgba(226, 232, 240, 0.98) !important;
    transform: translateY(-1px) !important;
}

.robochat-toggle-btn:active,
.robochat-expand-btn:active {
    transform: scale(0.95) !important;
}

.robochat-toggle-icon,
#robochatExpandIcon {
    color: #0f172a !important;
    font-size: 17px !important;
    font-weight: 850 !important;
}

.robochat-expand-btn {
    margin-right: 0 !important;
}

/* Minimized toggle should not become a big red block */
.robochat-shell.minimized .robochat-toggle-btn {
    background: rgba(37, 99, 235, 0.10) !important;
    border: 1px solid rgba(37, 99, 235, 0.20) !important;
    color: #2563eb !important;
}

.robochat-shell.minimized .robochat-toggle-icon {
    color: #2563eb !important;
}

/* Unread state: premium pulse without turning whole shell aggressive */
.robochat-shell.has-unread .robochat-toggle-btn {
    background: rgba(239, 68, 68, 0.10) !important;
    border: 1px solid rgba(239, 68, 68, 0.22) !important;
    color: #dc2626 !important;
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.30) !important;
    animation: robochatTogglePulse 1.5s ease-in-out infinite !important;
}

.robochat-shell.has-unread .robochat-toggle-icon {
    color: #dc2626 !important;
}

/* Badge */
.robochat-bar-badge {
    min-width: 20px !important;
    height: 20px !important;
    padding: 0 6px !important;
    border-radius: 999px !important;
    background: #ef4444 !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    box-shadow: 0 6px 14px rgba(239, 68, 68, 0.24) !important;
}

/* Body height must match new bar height */
.robochat-body {
    height: calc(100% - 54px) !important;
    background: #eef3f8 !important;
}

/* Hide body cleanly when minimized */
.robochat-shell.minimized .robochat-body {
    opacity: 0 !important;
    transform: translateY(8px) !important;
    pointer-events: none !important;
}

/* Framework7 iframe host, when old body is replaced */
.robochat-f7-host {
    display: block !important;
    width: 100% !important;
    height: calc(100% - 54px) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #eef3f8 !important;
}

.robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    display: block !important;
    background: #eef3f8 !important;
}

/* Compact desktop mode */
@media (max-width: 980px) {
    .robochat-shell {
        width: min(760px, calc(100vw - 24px)) !important;
        height: min(640px, calc(100vh - 24px)) !important;
        right: 12px !important;
        bottom: 12px !important;
    }

    .robochat-shell.minimized {
        width: min(380px, calc(100vw - 24px)) !important;
        height: 44px !important;
        bottom: 10px !important;
    }

    .robochat-shell.minimized .robochat-bar {
        height: 44px !important;
        min-height: 44px !important;
    }
}

/* Mobile-sized host pages */
@media (max-width: 768px) {
    .robochat-shell {
        right: 8px !important;
        bottom: 8px !important;
        width: calc(100vw - 16px) !important;
        max-width: calc(100vw - 16px) !important;
        height: min(640px, calc(100vh - 16px)) !important;
        max-height: calc(100vh - 16px) !important;
        border-radius: 20px 20px 0 0 !important;
    }

    .robochat-shell.minimized {
        width: min(340px, calc(100vw - 20px)) !important;
        height: 42px !important;
        right: 10px !important;
        bottom: 8px !important;
        border-radius: 999px !important;
    }

    .robochat-shell.minimized .robochat-bar {
        height: 42px !important;
        min-height: 42px !important;
    }

    .robochat-bar-title {
        font-size: 12.5px !important;
    }

    .robochat-toggle-btn,
    .robochat-expand-btn {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        min-height: 30px !important;
    }
}


/* Premium RoboChat shell brand mark */
.robochat-brand-mark {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #2563eb;
    background:
        linear-gradient(180deg, rgba(219, 234, 254, 0.98), rgba(191, 219, 254, 0.94));
    border: 1px solid rgba(147, 197, 253, 0.60);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 8px 20px rgba(37, 99, 235, 0.16);
    flex-shrink: 0;
}

.robochat-brand-mark svg {
    width: 21px;
    height: 21px;
    display: block;
}

.robochat-shell.minimized .robochat-brand-mark {
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    border-radius: 12px;
}

.robochat-shell.minimized .robochat-brand-mark svg {
    width: 18px;
    height: 18px;
}

@media (max-width: 768px) {
    .robochat-brand-mark {
        width: 32px;
        height: 32px;
        min-width: 32px;
        min-height: 32px;
        border-radius: 12px;
    }

    .robochat-brand-mark svg {
        width: 19px;
        height: 19px;
    }
}


/* Premium RoboChat logo toggle */
.robochat-brand-toggle {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 14px !important;
}

.robochat-brand-toggle:hover {
    background: rgba(37, 99, 235, 0.06) !important;
}

.robochat-brand-toggle:active {
    transform: scale(0.95) !important;
}

.robochat-brand-mark {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #2563eb;
    background:
        linear-gradient(180deg, rgba(219, 234, 254, 0.98), rgba(191, 219, 254, 0.94));
    border: 1px solid rgba(147, 197, 253, 0.60);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 8px 20px rgba(37, 99, 235, 0.16);
    flex-shrink: 0;
}

.robochat-brand-mark svg {
    width: 21px;
    height: 21px;
    display: block;
}

.robochat-shell.minimized .robochat-brand-toggle {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
}

.robochat-shell.minimized .robochat-brand-mark {
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    border-radius: 12px;
}

.robochat-shell.minimized .robochat-brand-mark svg {
    width: 18px;
    height: 18px;
}

.robochat-shell.has-unread .robochat-brand-mark {
    color: #dc2626;
    background:
        linear-gradient(180deg, rgba(254, 226, 226, 0.98), rgba(254, 202, 202, 0.94));
    border-color: rgba(248, 113, 113, 0.55);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.88),
        0 8px 20px rgba(239, 68, 68, 0.18);
    animation: robochatTogglePulse 1.5s ease-in-out infinite;
}

@media (max-width: 768px) {
    .robochat-brand-toggle {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        min-height: 34px !important;
    }

    .robochat-brand-mark {
        width: 32px;
        height: 32px;
        min-width: 32px;
        min-height: 32px;
        border-radius: 12px;
    }

    .robochat-brand-mark svg {
        width: 19px;
        height: 19px;
    }
}

.robochat-toggle-icon-hidden {
    display: none !important;
}

/* Framework7 app inside old RoboChat shell */
.robochat-f7-host {
    display: block !important;
    width: 100% !important;
    height: calc(100% - 54px) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #eef3f8 !important;
    opacity: 1 !important;
    transform: none !important;
}

.robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    border: 0 !important;
    outline: 0 !important;
    display: block !important;
    background: #eef3f8 !important;
}

.robochat-shell.minimized .robochat-f7-host {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
}

.robochat-shell.expanded .robochat-f7-host {
    height: calc(100% - 54px) !important;
}

/* =========================================================
   Compact Framework7 shell sizing
   Normal mode = mobile-style app frame
   Expanded mode = full desktop dashboard later
   ========================================================= */

/* Normal open state: compact app frame */
.robochat-shell:not(.minimized):not(.expanded) {
    width: min(430px, calc(100vw - 32px)) !important;
    height: min(720px, calc(100vh - 32px)) !important;
    right: 18px !important;
    bottom: 18px !important;
    border-radius: 24px 24px 0 0 !important;
}

/* Keep the iframe filling the compact frame */
.robochat-shell:not(.minimized):not(.expanded) .robochat-f7-host {
    height: calc(100% - 54px) !important;
    width: 100% !important;
}

/* Make iframe itself fill the shell body */
.robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    display: block !important;
    background: #eef3f8 !important;
}

/* Expanded mode remains wide */
.robochat-shell.expanded {
    top: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
    width: min(1240px, calc(100vw - 28px)) !important;
    height: calc(100vh - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    max-height: calc(100vh - 28px) !important;
    border-radius: 24px !important;
}

/* Small screens */
@media (max-width: 520px) {
    .robochat-shell:not(.minimized):not(.expanded) {
        width: calc(100vw - 16px) !important;
        height: calc(100vh - 16px) !important;
        right: 8px !important;
        bottom: 8px !important;
        border-radius: 22px 22px 0 0 !important;
    }
}


/* =========================================================
   Fix Framework7 iframe bottom cut / hanging
   ========================================================= */

.robochat-shell:not(.minimized) {
    display: flex !important;
    flex-direction: column !important;
}

.robochat-shell:not(.minimized) .robochat-bar {
    flex: 0 0 54px !important;
}

.robochat-shell:not(.minimized) .robochat-f7-host {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.robochat-shell:not(.minimized) .robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    display: block !important;
}

/* Compact shell needs a bit more height so Framework7 bottom nav/composer fits */
.robochat-shell:not(.minimized):not(.expanded) {
    height: min(760px, calc(100vh - 32px)) !important;
}

/* Expanded shell still fills the available screen cleanly */
.robochat-shell.expanded {
    display: flex !important;
    flex-direction: column !important;
}

.robochat-shell.expanded .robochat-f7-host {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
}

/* =========================================================
   RoboChat shell positioning:
   Minimized = floating pill
   Open compact = fitted to bottom
   ========================================================= */

/* Closed/minimized state: premium floating pill */
.robochat-shell.minimized {
    width: min(420px, calc(100vw - 28px)) !important;
    height: 46px !important;
    right: 18px !important;
    bottom: 14px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

/* Open compact state: attach to bottom, no hanging gap */
.robochat-shell:not(.minimized):not(.expanded) {
    width: min(430px, calc(100vw - 16px)) !important;
    height: calc(100vh - 18px) !important;
    right: 8px !important;
    bottom: 0 !important;
    border-radius: 24px 24px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

/* Header stays fixed */
.robochat-shell:not(.minimized) .robochat-bar {
    flex: 0 0 54px !important;
    height: 54px !important;
    min-height: 54px !important;
}

/* Framework7 iframe fills the remaining shell height */
.robochat-shell:not(.minimized) .robochat-f7-host {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* Iframe fills body exactly */
.robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    display: block !important;
    background: #eef3f8 !important;
}

/* Expanded/full view */
.robochat-shell.expanded {
    top: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    width: min(1240px, calc(100vw - 24px)) !important;
    height: calc(100vh - 24px) !important;
    border-radius: 24px !important;
    display: flex !important;
    flex-direction: column !important;
}

/* Smaller screens */
@media (max-width: 520px) {
    .robochat-shell.minimized {
        width: min(340px, calc(100vw - 20px)) !important;
        height: 42px !important;
        right: 10px !important;
        bottom: 10px !important;
    }

    .robochat-shell:not(.minimized):not(.expanded) {
        width: calc(100vw - 8px) !important;
        height: calc(100vh - 8px) !important;
        right: 4px !important;
        bottom: 0 !important;
        border-radius: 22px 22px 0 0 !important;
    }
}


/* =========================================================
   Revert compact open RoboChat shell height
   Keep minimized pill, but normal open height returns to original
   ========================================================= */

.robochat-shell:not(.minimized):not(.expanded) {
    width: min(430px, calc(100vw - 16px)) !important;
    height: 620px !important;
    max-height: calc(100vh - 24px) !important;
    right: 8px !important;
    bottom: 0 !important;
    border-radius: 24px 24px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

.robochat-shell:not(.minimized) .robochat-bar {
    flex: 0 0 54px !important;
    height: 54px !important;
    min-height: 54px !important;
}

.robochat-shell:not(.minimized) .robochat-f7-host {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.robochat-shell:not(.minimized) .robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    display: block !important;
}

/* Keep minimized shell as floating pill */
.robochat-shell.minimized {
    width: min(420px, calc(100vw - 28px)) !important;
    height: 46px !important;
    right: 18px !important;
    bottom: 14px !important;
    border-radius: 999px !important;
}

/* Expanded remains full view */
.robochat-shell.expanded {
    top: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    width: min(1240px, calc(100vw - 24px)) !important;
    height: calc(100vh - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    border-radius: 24px !important;
}
/* =========================================================
   RoboChat Full View · Framework7 iframe workspace
   ========================================================= */

/* Compact open view stays close to original height */
.robochat-shell:not(.minimized):not(.expanded) {
    width: min(430px, calc(100vw - 16px)) !important;
    height: 620px !important;
    max-height: calc(100vh - 24px) !important;
    right: 8px !important;
    bottom: 0 !important;
    border-radius: 24px 24px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

/* Full view */
.robochat-shell.expanded {
    top: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    width: min(1280px, calc(100vw - 24px)) !important;
    height: calc(100vh - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    border-radius: 24px !important;
    border-bottom: 1px solid rgba(203, 213, 225, 0.9) !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

/* Header remains fixed in both compact and full view */
.robochat-shell:not(.minimized) .robochat-bar {
    flex: 0 0 54px !important;
    height: 54px !important;
    min-height: 54px !important;
}

/* Framework7 body fills remaining shell height */
.robochat-shell:not(.minimized) .robochat-f7-host {
    flex: 1 1 auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    background: #eef3f8 !important;
}

/* Iframe fills body exactly */
.robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    display: block !important;
    background: #eef3f8 !important;
}

/* Keep minimized as the premium floating pill */
.robochat-shell.minimized {
    width: min(420px, calc(100vw - 28px)) !important;
    height: 46px !important;
    right: 18px !important;
    bottom: 14px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

/* Smaller screens */
@media (max-width: 768px) {
    .robochat-shell.expanded {
        top: 8px !important;
        right: 8px !important;
        bottom: 8px !important;
        width: calc(100vw - 16px) !important;
        height: calc(100vh - 16px) !important;
        max-width: calc(100vw - 16px) !important;
        max-height: calc(100vh - 16px) !important;
        border-radius: 22px !important;
    }

    .robochat-shell:not(.minimized):not(.expanded) {
        width: min(430px, calc(100vw - 16px)) !important;
        height: 620px !important;
        max-height: calc(100vh - 16px) !important;
        right: 8px !important;
        bottom: 0 !important;
    }
}
/* =========================================================
   RoboChat Full View as true modal workspace
   Compact = floating panel
   Expanded = full-page modal
   ========================================================= */

/* Full view should cover the whole page like a modal */
.robochat-shell.expanded {
    position: fixed !important;
    top: 12px !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    width: calc(100vw - 24px) !important;
    height: calc(100vh - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    border-radius: 24px !important;
    z-index: 999999 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    box-shadow:
        0 35px 90px rgba(15, 23, 42, 0.35),
        0 12px 35px rgba(37, 99, 235, 0.16) !important;
}

/* In full view, header remains fixed */
.robochat-shell.expanded .robochat-bar {
    flex: 0 0 54px !important;
    height: 54px !important;
    min-height: 54px !important;
}

/* Framework7 fills the full modal */
.robochat-shell.expanded .robochat-f7-host {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
}

/* Iframe fills full modal body */
.robochat-shell.expanded .robochat-framework7-frame {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border: 0 !important;
    display: block !important;
}

/* Compact open view remains the smaller floating panel */
.robochat-shell:not(.minimized):not(.expanded) {
    width: min(430px, calc(100vw - 16px)) !important;
    height: 620px !important;
    max-height: calc(100vh - 24px) !important;
    right: 8px !important;
    bottom: 0 !important;
    left: auto !important;
    top: auto !important;
    border-radius: 24px 24px 0 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
}

/* Minimized remains the floating pill */
.robochat-shell.minimized {
    width: min(420px, calc(100vw - 28px)) !important;
    height: 46px !important;
    right: 18px !important;
    bottom: 14px !important;
    left: auto !important;
    top: auto !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

/* =========================================================
   RoboChat Glass Shell
   ========================================================= */

.robochat-shell {
    background: rgba(255, 255, 255, 0.16) !important;
    border: 1px solid rgba(255, 255, 255, 0.22) !important;
    box-shadow:
        0 20px 60px rgba(15, 23, 42, 0.28),
        0 8px 24px rgba(37, 99, 235, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.24) !important;
    backdrop-filter: blur(18px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    overflow: hidden !important;
}

/* Compact open shell */
.robochat-shell:not(.minimized):not(.expanded) {
    background: rgba(255, 255, 255, 0.18) !important;
    border: 1px solid rgba(255, 255, 255, 0.24) !important;
    box-shadow:
        0 22px 65px rgba(15, 23, 42, 0.30),
        0 10px 28px rgba(37, 99, 235, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.26) !important;
}

/* Expanded full view glass feel */
.robochat-shell.expanded {
    background: rgba(255, 255, 255, 0.14) !important;
    border: 1px solid rgba(255, 255, 255, 0.20) !important;
    box-shadow:
        0 28px 90px rgba(15, 23, 42, 0.34),
        0 12px 30px rgba(37, 99, 235, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.24) !important;
    backdrop-filter: blur(20px) saturate(170%) !important;
    -webkit-backdrop-filter: blur(20px) saturate(170%) !important;
}

/* Header / top bar glass */
.robochat-bar {
    position: relative;
    background:
        linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.68) 0%,
            rgba(255, 255, 255, 0.46) 100%
        ) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.20) !important;
    backdrop-filter: blur(14px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(14px) saturate(160%) !important;
}

/* Nice glossy highlight at top */
.robochat-bar::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,0.28) 0%,
            rgba(255,255,255,0.08) 45%,
            rgba(255,255,255,0.00) 100%
        );
}

/* Framework7 host area slightly translucent */
.robochat-f7-host {
    background: rgba(255, 255, 255, 0.10) !important;
}

/* Keep iframe clean but allow glass shell around it */
.robochat-framework7-frame {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: 0 !important;
    background: transparent !important;
}

/* Minimized pill glass feel */
.robochat-shell.minimized {
    background: rgba(255, 255, 255, 0.20) !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    box-shadow:
        0 14px 40px rgba(15, 23, 42, 0.24),
        0 6px 18px rgba(37, 99, 235, 0.10),
        inset 0 1px 0 rgba(255,255,255,0.30) !important;
    backdrop-filter: blur(16px) saturate(160%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(160%) !important;
}


.l_c_h {
    width: 447px;
    position: fixed;
    bottom: 0;
    right: 0px;
    background: #fff;
    border-radius: 3px;
    z-index: 5000;
    display: block;
    border-top-right-radius: 16px;
    border-top-left-radius: 16px;
}

.l_c_h .c_h {
    cursor: pointer;
    border-radius: 0px;
    border-bottom: none;
    background: linear-gradient(135deg, rgb(42, 39, 218) 0%, rgb(0, 204, 255) 100%);
    line-height: 34px;
    border-top-right-radius: 16px;
    border-top-left-radius: 16px;
}

.l_c_h .left_c {
    color: #ebebeb;
    width: 150px;
    font-size: 16px;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h .right_c {
    text-align: center;
    background: rgb(232, 22, 22);
    line-height: 36px;
    border-top-left-radius: 16px;
}

.l_c_h .right_c a {
    color: #ebebeb;
    border-radius: 3px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    cursor: pointer !important;
    font-size: 16px;
    line-height: normal !important;
    margin-top: 0 !important;
    padding: 1px 0px !important;
    text-align: center !important;
    text-decoration: none;
    font-weight: 600;
}

.l_c_h .clear {
    clear: both;
}

.l_c_h .chat_container .no_provider {
    text-align: left;
    color: #5E5652;
    font-size: 12px;
    width: 300px;
    padding: 5px;
    font-family: Arial, Helvetica, sans-serif;
    margin-left: 5px;
}

.l_c_h .chat_container .footer_c {
    text-align: left;
    color: #5E5652;
    font-size: 12px;
    margin-left: 10px;
    margin-bottom: 10px;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h .chat_container .footer_c a {
    text-decoration: underline;
    color: #777;
    font-size: 11px;
}

.l_c_h .chat_container .chat_entry {
    margin: 10px;
    margin-top: 0px;
}

.l_c_h .chat_container .chat_entry p {
    margin-top: 10px;
    margin-bottom: 10px;
}

.l_c_h .chat_container .chat_entry h4 {
    text-align: left;
    color: #1A1A1A;
    font-weight: 400;
    font-size: 16px;
    margin-top: 0px;
}

.l_c_h .chat_container .chat_entry input[type="text"] {
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #999;
    font-size: 13px;
    padding: 8px 8px;
    margin-bottom: 5px;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
    width: 100%;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h .chat_container .chat_entry input[type="text"]:focus {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    outline: 0 none;
    border-color: #66afe9;
}

.l_c_h .chat_container .chat_entry input[type="submit"] {
    padding: 5px 12px;
    margin-bottom: 0;
    font-size: 12px;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 0px;
    color: #fff;
    background-color: #2dc3e8 !important;
    font-family: Arial, Helvetica, sans-serif;
}

.l_c_h .chat_container .chat_entry input[type="submit"]:hover {
    background-color: #C64545;
}

.l_c_h .form-error {
    display: none;
}

.l_c_h .chat_message {
    height: 250px;
    overflow-y: scroll;
    padding: 10px;
    border-bottom: 1px solid #222222;
    padding-top: 10px;
}

.l_c_h .chat_message .message_contain {
    margin: 5px;
    background: #FCF8E2;
    padding: 5px;
}

.l_c_h .chat_message .user_message {
    background: #F5F5F5;
}

.l_c_h .chat_message .message_contain .header_image {
    float: left;
    width: 50px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.l_c_h .chat_message .message_contain .chat_mess {
    font-size: 13px;
    color: #444444;
    margin-top: 0px;
}

.l_c_h .chat_message .message_contain .chat_date {
    color: #777;
    font-size: 11px;
    margin-top: 0px;
    margin-bottom: 0px;
}

.l_c_h .chat_text_area {
    margin: 5px;
}

.l_c_h .chat_text_area .messag_send {
    width: 100%;
    resize: none;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 2px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #555;
    padding: 5px;
    font-size: 13px;
    height: 35px;
}

.l_c_h .chat_text_area .messag_send:focus {
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
    outline: 0 none;
    border-color: #66afe9;
}

.left {
    float: left;
}

.right {
    float: right;
}

.left_icons {
    width: 35px;
    height: 37px;
    text-align: center;
    color: #999;
    background: #ff8f32;
}

.left_icons a {
    color: #fff;
    font-weight: normal;
    font-size: 35px !important;
}

.center_icons {
    text-align: center;
    padding: 2px 0px 0px 5px;
}

.field-icon {
    float: right;
    margin-left: -5px;
    position: relative;
    z-index: 2;
}

.wwwImage .circle {
    overflow: hidden;
    width: 60px;
    height: 60px;
    margin-top: 5px;
    /* border: 2.5px solid green; */
}

.wwwImage .profile-pic {
    width: 58px;
    height: 58px;
    /* margin: 3px; */
    border-radius: 100% !important;
}

#search-wrapper {
    display: flex;
    border: 1px solid rgba(0, 0, 0, 0.276);
    align-items: stretch;
    border-radius: 20px;
    background-color: #fff;
    overflow: hidden;
    width: 280px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset, 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    height: 28px !important;
}

#search {
    border: none;
    width: 280px;
    font-size: 15px;
    height: 27px !important;
}

#search:focus {
    outline: none;
}

.search-icon {
    margin: 4px;
    color: rgba(0, 0, 0, 0.564);
    font-size: 20px;
}

#search-button {
    border: none;
    cursor: pointer;
    color: #fff;
    background-color: #1dbf73;
}

.bouton {
    color: #fff;
    border-radius: 20px;
    border: 0px;
    background: #a3a3a3;
    height: 30px;
    font-size: 12px;
    width: 90%;
    transition: box-shadow 0.1s linear;
}

.bouton:hover {
    transition: box-shadow 0.1s linear;
    text-transform: uppercase;
    font-weight: 800;
    color: #fff;
    border-radius: 100px;
    border: 0px;
    background-image: linear-gradient(60deg, #3498db, #7c4891);
    box-shadow: 0 12px 16px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19);
    cursor: pointer;
}

.bouton:active {
    text-transform: uppercase;
    font-weight: 800;
    color: #fff;
    border-radius: 100px;
    border: 0px;
    background-image: linear-gradient(60deg, #3498db, #7c4891);
    box-shadow: 0 12px 16px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19);
    height: 45px;
    width: 145px;
}