/*Universal Box Sizing with Inheritance - https://css-tricks.com/box-sizing/ */
html {
    box-sizing: border-box;
}

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

body {
    background-color: #DADADA;
    overflow: hidden;
}


/*layout common start*/
body {
    font-family: Poppins, sans-serif;
    background-color: #f5f5f5;
    overflow: hidden;
}

.text-primary {
    color: #0e2154 !important;
}

.btn-outline-primary:hover,
.btn-primary {
    color: #fff;
    background-color: #0e2154 !important;
    border-color: #0e2154;
}

.bg-primary {
    background-color: #0e2154 !important;
}


.master-container {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: calc(100dvh - 60px);
}

label,
p,
span,
td,
a,
th {
    font-size: .875rem;
}

.breadcrumb-buttons a {
    font-size: .775rem;
}

.ajax-alerts {
    position: sticky;
    z-index: 999;
    width: 100%;
    top: 0;
    font-size: .875rem;
}

.ajax-alerts .alert {
    margin-bottom: 0.1rem;
}

.validation-alerts {
    font-size: .775rem;
    line-height: .875rem;
}

.tel-success,
.tel-error {
    display: inline-block;
    padding: 0 .3rem;
}

.tel-success {
    color: #3c763d;
}

.tel-error {
    color: #a94442;
}

.error-help {
    width: 100% !important;
    border-radius: 4px !important;
}

.has-error {
    border-color: #f5c2c7 !important;
    border-radius: 4px !important;
}

.tel-success,
.tel-error {
    position: absolute;
    right: 1rem;
    top: 2rem;
}


.p-container>.pagination {
    justify-content: center;
}

.default_buttons {
    z-index: 999;
    position: fixed;
    right: 1%;
    bottom: 2%;
}

a {
    text-decoration: none;
}

.file-icon-span {
    line-height: 1.7 !important;
}

/*layout common end*/

/*layout head*/
#header {
    width: 100%;
    height: 60px;
    top: 0;
    position: relative;
}

#header .badge {
    font-size: 11px;
    font-weight: 400
}


.avatar {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 0 1.6rem;
}


.header-right {
    display: inline-flex;
    /*position: absolute;
    right: 1rem;*/
}

header .header-right a span {
    font-size: .875rem;
}

a.btn.shadow-none.position-relative.text-secondary:hover {
    background-color: #cfe2ff;
    color: #0058cc !important;
    border-color: #0058cc !important;
}



.header-icons .header-icons-icon .header-icons-notify {
    background: #E42346;
    top: -8px;
    right: -8px;
    padding: 2px;
    font-size: .6em;
    font-weight: 600;
}

.header-icons .header-icons-icon {
    font-size: 1.1em;
    width: 36px;
    color: #585757;
}

.fa-message:before {
    content: "\f075";
}

.fa-audio:before {
    content: "\f130";
}

/*layout head*/



/*layout sidebar*/
/* ===== Scrollbar CSS ===== */
/* Firefox */
#sidebar {
    scrollbar-width: thin;
    scrollbar-color: #D0D3D8 #f5f5f5;
    background-color: #FBFBFB;
}

/* Chrome, Edge, and Safari */
#sidebar::-webkit-scrollbar {
    width: .875rem;
}

#sidebar::-webkit-scrollbar-track {
    background: #f5f5f5;
}

#sidebar::-webkit-scrollbar-thumb {
    background-color: #D0D3D8;
    border-radius: 10px;
    border: 3px solid #f5f5f5;
}

#sidebar {
    min-width: fit-content;
    overflow: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

#sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}


#sidebar.active {
    width: 20%;
}

#sidebar ul li button {
    width: 100%;
    margin: 0 0 .2rem 0;
    line-height: 1rem;
}

#sidebar ul li button span {
    /*font-weight: 700;*/
    /*color: #364354;*/
    font-size: .875rem;
    white-space: nowrap;
}

#sidebar ul li .btn-outline-primary:hover span,
#sidebar .btn-outline-primary:hover i {
    color: #fff !important;
}

.btn:focus {
    box-shadow: none;
}


#sidebar ul li ul {
    padding: 0;
}

#sidebar ul li ul li {
    padding: 0px;
    margin: 0px;
    padding-left: 20px;
}

#sidebar ul li ul li:hover {
    background-color: #f0f8ff;
}

#sidebar ul li ul li.active {
    background-color: #f0f8ff;
}

#sidebar ul li ul li a {
    text-decoration: none;
    padding: 3px 0;
    margin: 0;
    display: block;
    font-size: 14px;
    color: #7A8EA8;
    white-space: nowrap;
}

/*for left menu navigation */
.activeMenu,
.activeMenuNav {
    background-color: #f0f8ff !important;
}

.activeMenu>div>*,
.activeMenuNav>div>* {
    color: #0e2154 !important;
}

.btn-sidebar {
    color: #2C2B2B;
}

/*for left menu navigation */



/*for left menu minimized */
#sidebar.sidebarMinimized {
    width: 4.4rem;
    min-width: 4.4rem;
    max-width: 4.4rem;
    overflow-x:hidden;
}

#sidebar.sidebarMinimized ul li ul,
#sidebar.sidebarMinimized ul li button span:not(.badge),
#sidebar.sidebarMinimized ul li button div i:last-child,#sidebar.sidebarMinimized .expert-switch {
    display: none;
}

/* Appointment Schedules */

.agent-panel {
    padding-top: 1rem;
    padding-left: 1rem;
}

.head-buttons-left {
    display: flex;
    align-items: center;
    flex-grow: 1;
    margin-left: 50px;
}

.appointments-common-container {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.head-buttons-left i {
    font-size:25px;
}

.calendar-page-info-right a{
    width:115px;
}
.head-buttons-left a, .head-buttons-left span{
    font-family: "Poppins";
    font-weight: 600;
    font-size: 13px;
    color: #0E2255;
    display: flex;
}

.head-buttons-right {
    display: flex;
    flex-direction: row;
    justify-content: end;
    flex-wrap: wrap;
}

.head-buttons-right button, .head-buttons-right .dropdown-menu.show {
    min-width:170px;
}



.head-buttons {
    display: flex;
    margin-top: 1rem;
    flex-wrap: wrap;
    align-items: center;
}

.next-prev-btns {
    color: #000;
    text-align: center;
    font-family: "Poppins";
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    margin-right: 5px;
}


.btn-appointments {
    background-color: #FFFFFF !important;
    border: 1px solid #FFFFFF !important;
    color: #090909 !important;
    font-family: "Poppins";
    font-weight: 300;
    font-size: 13px;
}

.btn-appointments-calendar-view {
    background-color: #ECF5FF !important;
    border: 1px solid #ECF5FF !important;
    color: #090909 !important;
    font-family: "Poppins";
    font-weight: 300;
    font-size: 13px;
}

.add-appointment {
    background-color: #D0D0D0 !important;
    border: 1px solid #D0D0D0 !important;
    border-radius: 4px;
    color: #242424 !important;
    font-family: "Poppins";
    font-weight: 300;
    font-size: 13px;
    line-height: 14px;
    margin-right: 1rem;
}

.googlesync-btn {
    background-color: #D0D0D0 !important;
    border: 1px solid #D0D0D0 !important;
    border-radius: 4px;
    color: #242424 !important;
    font-family: "Poppins";
    font-weight: 300;
    font-size: 13px;
    line-height: 14px;
    margin-right: 1rem;
}

.outlooksync-btn {
    background-color: #D0D0D0 !important;
    border: 1px solid #D0D0D0 !important;
    border-radius: 4px;
    color: #242424 !important;
    font-family: "Poppins";
    font-weight: 300;
    font-size: 13px;
    line-height: 14px;
    margin-right: 1rem;
}

.calendar-page-setting-btn {
    background-color: #ECF5FF;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 13px;
    line-height: 19.5px;
    margin-right: 5px;
}

.calendar-page-setting-menu li {
    font-family: 'Poppins';
    font-weight: 400;
    font-size: 9px;
    line-height: 20px;
    margin: 0 15px;
    color: #232738;
}

.calendar-page-setting-menu li a {
    margin: 0;
    padding: 0;
    color: #232738;
    font-family: 'Poppins';
    font-weight: 400;
    font-size: 12px;
    line-height: 20px;
}

.calendar-page-setting-menu hr {
    margin: 5px;
}

.btn-myschedule, .btn-calendar-page-add-btn {
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 13px;
    background-color: #6FD096 !important;
    border: 1px solid #6FD096 !important;
    color: #FFFFFF !important;
}

.btn-calendar-page-add-btn i, .calendar-page-setting-btn i {
    margin-right: 5px;
}

.expert-calendar-title-area {
    width: 98%;
    height: 80px;
    background-color: #C0CEDC;
    padding: 15px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.calendar-page-info-title {
    font-family: 'Poppins';
    font-weight: 700;
    font-size: 14px;
    line-height: 21px;
    color: #0E2255;
}

.calendar-page-info-area {
    font-family: 'Poppins';
    font-weight: 500;
    font-size: 14px;
    line-height: 21px;
    color: #605F5F;
}

.schedule-container {
    background: #FFF;
    margin: 1rem 0;
    display: flex;
    flex-grow: 1;
    flex-direction: column;    
}

.schedule>.cal__row:first-child {
    width: 50px;
    max-width: 50px;
}

.schedule {
    display: flex;
    flex-wrap: wrap;
    flex-grow: 1;
    overflow: hidden auto;
    scrollbar-width: thin; 
    scrollbar-color: #41a2fe94 #f5f5f5;    
}

.wh-schedule {
    display: flex;
    flex-wrap: wrap;
    overflow-y: auto;
    max-height: 60dvh;
    overflow: hidden auto;
    scrollbar-width: thin; 
    scrollbar-color: #41a2fe94 #f5f5f5;        
}

.line-time {
    font-size: 10px;
    display: block;
    width: 25px;
    line-height: 0px;
    margin-left: 60px;
}

.time-line-area {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
}

.schedule > .cal__row {
    width: 50px;
}

.schedule > .cal__row ~ .cal__row {
    width: 100px;
}

.cal__row {
    border-bottom: 1px solid #efefef;
    flex-grow: 1;
    position: relative;
}

.col-header {
    text-align: center;
    line-height: 50px;
}

.cal__row-cols {
    display: block;
    width: auto;
}

.cal__row-label {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 3;
}

.cal__col {
    min-height: 70px;
    background: #fff;
    position: relative;
}

.wh-schedule .cal__col {
    min-height: 40px !important;
}

.cal__col input {
    display: none;
}

.cal__col label {
    display: block;
    color: black;
    background: #e0e0e0;
    font-family: 'Montserrat', sans-serif;
    font-size: .9rem;
    font-weight:600;
    cursor: pointer;
    border: 1px solid #f1f1f1;
    text-align: center;
    height: 70px;
}

.wh-schedule .cal__col label {
    height: 40px !important;
}

.wh-schedule .label-col label{
    height: 40px !important;
    line-height: 40px !important;
}

.wh-schedule .cal__row {
    width: 12.5% !important;
}

.wh-schedule .col-header {
    line-height: 40px !important;
}

.wh-schedule .col-header label {
    line-height: 40px !important;
}

.modal-footer {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.info-box-available {
    width: 15px;
    height: 15px;
    border: 1px solid #818080;
    background-color: #FFFFFF;
}

.info-box-non-available {
    width: 15px;
    height: 15px;
    border: 1px solid #818080;
    background-color: #e0e0e0;
}

.info-text-whcalendar-footer {
    font-family: 'Poppins';
    font-weight: 500;
    font-size: 10px;
    line-height: 10px;
    color: #71717A;
}

.wh-calendar-info-area {
    display: flex;
    flex-direction: column;
}

.wh-schedule-container {
    margin: 0;
    border: 0;
}

.extended-calendar-popups-modal-body {
    width: 50%;
    margin: auto;
}

.add-block-time-modal-body {
    width: 85%;
    margin: auto;
}

.col-time-input {
    flex: 0 0 auto;
    width: 18%;
}

.extended-calendar-popups-select-label {
    font-family: "Poppins";
    font-size: 15px;
    font-weight: 600;
    line-height: 22.5px;
    color: #464646;
}

.calendar-sync-modal-body {
    width: 85%;
    margin: auto;
}

.calendar-sync-option {
    width: 90%;
    height: 80px;
    border: 0.8px solid #F1F1F1;
    background-color: #FFF;
    margin-bottom: .5rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.calendar-sync-option-deactive {
    width: 90%;
    height: 80px;
    border: 0.8px solid #D9D9D9;
    background-color: #D9D9D9;
    margin-bottom: .5rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    opacity: 0.5;
}

.calendar-sync-option-logo {
    width: 20%;
}

.calendar-sync-option-text-area {
    width: 50%;
    margin: auto;
}

.calendar-sync-option-button-area {
    width: 30%;
    min-height: 50px;
    margin: auto;
    background-color: #6FD096 !important;
    border: 1px solid #6FD096 !important;
    text-align: center;
    padding: 10px;
    margin-right: 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.calendar-sync-option-logo img { 
    height: 80px;
}

.calendar-sync-option-text-area-title p {
    font-family: "Poppins";
    font-size: 20px;
    font-weight: 600;
    line-height: 22.5px;
    color: #464646;
}

.calendar-sync-option-text-area-info p {
    font-family: "Poppins";
    font-size: 12px;
    font-weight: 300;
    line-height: 13.5px;
    color: #000;
}

.calendar-sync-option-button {
    font-family: 'Poppins';
    font-weight: 500;
    font-size: 15px;
    line-height: 19.5px;
    text-align: center;
    color: #FFFFFF !important;	
}

.col-header label {
    background: #fff;
    color: #71717A;
    text-align: center;
    font-family: Poppins;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    cursor: default;
    line-height: 50px;
}

.col-extended-header label {
    background: #fff;
    color: #71717A;
    text-align: center;
    font-family: Poppins;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    cursor: default;
;
}

.col-extended-header label .extendedFormatedDate{
    color: #71717A;
    text-align: center;
    font-family: "Poppins";
    font-size: 10px;
    font-style: normal;
    font-weight: 500;
    line-height: 12px; 
}

.col-extended-header label .extendedFormatedDay{
    color: #000;
    text-align: center;
    font-family: "Poppins";
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: 32px;
}

.label-col label{
    display: block;
    background: #fff;
    text-align: center;
    height: 70px;
    line-height: 60px;
    color: var(--gray-500, #71717A);
    font-family: "Poppins";
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
}

.cal__col input[type=checkbox]:checked+label {
    background: #fff !important;
}

.cal__col input[type=checkbox][data-value="0"]+label {
    background: #E0E0E0 !important;
}

.cal__col input[type=checkbox][data-value="1"]+label {
    background: #fff !important;
}

.cal__col input[type=checkbox][data-value="2"]+label {
    background: #C1BEBE !important;
}

.cal__col input[type=checkbox][data-value="3"]+label {
    background: #fff !important;
}

/*.cal__col input[type=checkbox][data-hasslotapp="1"]+label .app-infos{
    background: #E16A6A !important;
}*/

.cal__col input.filled+label:after {
    position: absolute;
    content: "";
    top: 6px;
    right: 6px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: darkred;
    cursor: not-allowed;
}

.booking-info {
    display: none;
    position: absolute;
    bottom: 130%;
    left: 50%;
    width: 200%;
    background: #333;
    box-shadow: 0 0 8px rgba(0, 0, 0, .2);
    border-radius: 3px;
    font-size: .8rem;
    padding: .5rem;
    transform: translateX(-50%);
    z-index: 100;
    text-align: center;
}

.booking-info:after {
    position: absolute;
    bottom: -5px;
    left: 50%;
    margin-left: -5px;
    width: 0;
    border-top: 5px solid #000;
    border-top: 5px solid hsla(0, 0%, 20%, 0.9);
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    content: " ";
    font-size: 0;
    line-height: 0;
}

.booking-info a {
    text-decoration: none;
    color: #fff;
    font-family: Roboto, "Helvetica Neue", Arial, sans-serif;
}
 
.app-infos {
    display: flex;
    flex-direction: column;
    position: relative;
    height: 100%;
    width: 100%;
}

.info-text-app {
    border-left: solid 3px #0369A1;
    text-align: left;
}

.info-text-app.event{
    background-color: #defff4;
    padding: 2px 4px;
    position: relative;
    overflow: hidden;
}

.info-text-app .fa-repeat, 
.info-text-app .fa-star {
    position: absolute;
    bottom: 2px;
    right: 4px;
    margin: 0 !important;
}

.info-text-app.event i {
    position: absolute;
    bottom: 2px;
    right: 4px;
    margin: 0;
}

.info-text-app.event span{
    text-wrap:wrap;
    line-height:14px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.info-text-app.google {
    border-left: solid 3px #dfaf13 !important;
    display: flex;
    background-color: #fffbeb;
    flex-direction: row;
    align-items: center;
    padding: 2px 4px;
}

.info-text-app.google img {
    margin-right: 4px;
}

.info-text-app.outlook {
    border-left: solid 3px #EB3C00 !important;
    display: flex;
    background-color: #fff5f1;
    flex-direction: row;
    align-items: center;
    padding: 2px 4px;
}

.info-text-app.outlook img {
    margin-right: 4px;
}

.info-text-app.event {
    border-left: solid 3px #095a8e!important;
}

.info-text-block-one {
    border-left: solid 3px #000;
    text-align: left;
    margin: 1px;
}

.info-text-available-one {
    border-left: solid 3px #6FD096;
    text-align: left;
    margin: 1px;
}

.info-text span {
    font-size: 9px;
    line-height: 7px;
    text-align: left;
    margin-left: 4px;
    text-wrap: nowrap;
}

.add_cell {
    height: 70px;
    width: 100%;
    position: absolute;
    text-align: center;
    line-height: 70px;
    background-color: #fff;
    opacity: .7;
    font-size: 1.2rem;
    display: none;
    z-index: 1;
    cursor: pointer;    
}

.addition_list {
    min-width: 100%;
    min-height: 70px;
    height: auto;
    width: 180px;
    position: absolute;
    text-align: center;
    background-color: #fff;
    opacity: 1;
    top: 50%;
    right: 50%;
    z-index: 2;
    border: 0.8px solid #F1F1F1;
    display: none;
    translate: 26px -28px;
}

.addition_list ul{
    list-style: none;
    text-align: start;
    margin: 0;
    padding: 0;
    padding: 1rem;
}

.addition_list ul li{
    line-height: 10px;
}

.addition_list a{
    color: #000;
    font-size: .7rem;
}

.close-li {
    text-align: right;
}

.close-li a{
    font-size: 1.2rem;
}

#expertAddAppointment .modal-body {
    margin: auto;
}

#addAppointmentForm .form-label {
    color: #464646;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
}

#addAppointmentForm .form-select {
    color: #000000;
    font-family: 'Poppins';
    font-weight: 300;
}

#addAppointmentForm .tagify__tag__removeBtn {
    display: none;
  }

.package-area {
    display: flex;
    flex-direction: column;
}

.package-info-area {
    text-align: end;
}

.package-info-area span {
    color: #000000;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 12px;
}

.session-title {
    color: #0E2255;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 15px;
    line-height: 22.5px;
}

.session-info-text {
    color: #000000;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 12px;
    line-height: 16px;
}

hr.line {
    width: 100%;
    border-top: 1px solid #0E2255;
}

.session-date-area {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.dont-show {
    display: none !important;
}

.session-counter-title span{
    color: #0E2255;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 15px;
    line-height: 22.5px;
}

.choose-from-calendar p{
    color: #0E2255;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 7px;
    line-height: 10.5px;
}

.appointment-session-date::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #696969;
    font-family: 'Poppins';
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
}

.appointment-session-date:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #696969;
    font-family: 'Poppins';
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
}

.appointment-session-date::-ms-input-placeholder { /* Microsoft Edge */
    color: #696969;
    font-family: 'Poppins';
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
}

.cf-calendar-text {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.cf-calendar-icon {
    color: #0E2255;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 16px;
    line-height: 17px;
    margin: auto 0;
    margin-right: 5px;
}

.cf-calendar-text {
    color: #0E2255;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 10px;
    line-height: 14px;
    display: flex;
    justify-content: flex-end;
    align-items: center;    
}

.week-calendar {
    width: 100%;
    margin: 0 auto;
    box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, .2);
    border-radius: 10px;
    position: relative;
    border-top: 1px solid #d9d9d9;
    border-left: 1px solid #d9d9d9;
    border-radius: 10px;
    padding-bottom: 10px;
}

.calendar-heading {
    text-align: center;
    font-weight: 700;
    font-size: .9rem;
    color: #888;
    padding: 1rem;
    box-shadow: 0 0 6px -3px rgba(0, 0, 0, .2);
    background: #155dd9;
    color: #fff;
}

.calendar-body ul,
.calendar-body li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.dates {
    box-shadow: 0 0 4px -2px #E6E6E6;
}

.calendar-body ul {
    display: flex;
    -webkit-display: flex;
    padding: 0 .5rem;
    padding-top: 5px;
    padding-bottom: 0;}

.dates li {
    flex-grow: 1;
}

.dates li a {
    font-family: 'Poppins';
    display: block;
    font-size: 24px;
    line-height: 36px;
    font-weight: 700;
    text-align: center;
    color: #0E2255;
    cursor: pointer;
    padding: 1px;    
}

.dates li a:hover,
.dates li a:focus {
    text-decoration: none;
    color: #000;
}

.dates li.active a {
    background: #E0E2E9;
    color: #0E2255;
    border-radius: .375rem;
}

.dates li:last-child {
    border-right: 0;
}

.dates li a>span {
    display: block;
    font-size: .65rem;
    font-weight: 400;
}

.hours {
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    display: grid;
    flex-wrap: wrap;
    padding: 1rem .5rem;
    max-height: 50dvh;
    overflow-y: auto;
    padding-top: 5px;
    scrollbar-width: thin;
    scrollbar-color: #41a2fe94 #f5f5f5;    
}

.slot {
    padding: .2rem 1.5rem;
    margin: 1%;
    text-align: center;
    cursor: pointer;
    font-weight: 700;
    font-size: 13px;
    line-height: 19.5px;
    color: #0E2255;
    border: 1px solid #E0E0E0;
    border-radius: 3px;
    letter-spacing: .5px;
}

.slot.active {
    position: relative;
    background: #E0E2E9;
    color: #0E2255;
}

.slot.active:before {
    content: "";
    position: absolute;
    top: -3px;
    right: -3px;
    width: 16px;
    height: 16px;
    background: #283f5d;
    border-radius: 50%;
}

.slot.active:after {
    content: "";
    position: absolute;
    top: 0;
    right: 2px;
    width: 5px;
    height: 8px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    z-index: 2;
}

.bookedSlot {
    background-color: #E0E2E9;
    pointer-events: none;
    text-decoration: line-through;
}

.bookedSlot.btn-pickatime.slot:hover {
background-color: aliceblue;
color: #446c9e;
}

.calendar-month {
    color: #464646;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 8px;
    line-height: 12px;
    margin-top: 10px;
}

.calendar-day {
    color: #464646;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 8px;
    line-height: 12px;
    margin-bottom: 10px;
}

.modal-calendar-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 6px 0;
}

.modal-calendar-header a {
    color: #464646;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 14px;
    line-height: 18px;
}

.btn-session-updown {
    background-color: #E9ECEF;
}

.check-options-wrs {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.charge-info-area ul li{
    color: #000000;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 10px;
    line-height: 12px;
}

.session-date-area-row {
    margin-bottom: .5rem;
}

#appointment-charge-types {
    color: #000000;
    font-family: 'Poppins';
    font-weight: 300;
    font-size: 12px;
    line-height: 18px;
    margin: auto 5px !important;
}

.appointment-purchase-info-area .appointment-purchase-success {
    color: green;
}

.appointment-purchase-info-area .passed-appointment-pending {
    color: red;
}

.appointment-purchase-info-area .valid-appointment-pending {
    color: orange;
}

#session-label {
    height: 100%;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0em;
    text-align: left;
   
}

.submit-appointment-form-btn {
    background-color: #6FD096;
    color: #FFFFFF;
    font-family: "Poppins";
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0em;
    text-align: left;
    
}

#agent-timezone-btn, #agent-add-block-time-btn {
    background-color: #6FD096;
    color: #FFFFFF;
    font-family: "Poppins";
    font-size: 13px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0em;
    text-align: left;
    margin-top: 1rem;
}


.tagify__input {
    padding: .18em .5em !important;
}

#addAppointmentForm .tagify {
    border-radius: .375rem;
}

.tagify--select::after {
    opacity: 1 !important;
}

.datepicker.datepicker-dropdown.dropdown-menu.datepicker-orient-left.datepicker-orient-bottom {
    top: 170px !important;
    background-color: #F3F7FF;
}

.bookCounter-left {
    position: absolute;
    top: 4px;
    left: 4px;
    font-size: 10px;
    border: 1px solid;
    border-radius: 50px;
    display: block;
    padding: 2px;
    background-color: #0a58ca;
    color:white;
    width: 20px;
    height: 20px;
  }

  .bookCounter-right {
    position: absolute;
    top: 4px;
    right: 4px;
    font-size: 10px;
    border: 1px solid;
    border-radius: 50px;
    display: block;
    padding: 2px;
    background-color: #aebdca;
    width: 20px;
    height: 20px;
  }
  .servicesMenuCustom :active{
    background-color: #c0cedc;
  }

  .change-password-area {
    display: flex;
    flex-direction: row;
    justify-content: start;
}

.change-password-area button {
    margin-top: .5rem;
}

.change-password-form-inputs {
    margin: 0 auto;
}

.cookie{
    width: 90%;
    height: auto;
    color:#FFF;
    background-color: #0E2154;
    position: fixed;
    bottom: 15px;
    border-radius: 10px;
    left: 5%;
    right: 5%;
    padding: 30px 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size:14px;
    z-index: 9999;
}

.cookie .cookieText{
    float: left;
    width: 80%;
}
.cookieText p{
    padding: 3px 0px;
    margin:0;
}

.cookieText a{
    color: #0d6efd;
    text-decoration: none;
}

.cookie .accept {
    border:solid #FFF 1px;
    color: #fff !important;
    border-radius: 10px;
    padding: 5px 23px 5px;
    font-size: 14px;
    float:right;

}
.cookie .accept:hover {
    background-color: #DBFD1C;
    color:#0E2154 !important;
    border-color: #DBFD1C;
}









@media (max-width: 767.98px) {

    #sidebar.sidebarMinimized {
        display: none;
    }

    #sidebar {
        position: absolute;
        z-index: 99;
        height: calc(100dvh - 60px);
    }

}

/*for left menu minimized */


#sidebar ul li button div i:last-child {
    margin-left: .5rem !important;
    color: #B5B5B5;
    font-weight: 400;
}

#sidebar ul li button div i:first-child {
    width: 1.25rem !important;
    color: #212529;
    font-weight: 400;
}

button.btn.btn-sidebar.border-0.p-3:hover , button.btn.btn-sidebar.border-0.p-3.active , button.btn.btn-sidebar.active{
    background: #f0f8ff;
    color: #1e3050;
    border: none;
}

/*layout sidebar*/


/*overlay*/
.overlay {
    opacity: 0.75;
    z-index: 9999;
    background: rgba(255, 255, 255, .7) !important;
}

.overlay:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -12px;
    margin-left: -12px;
    width: 24px;
    height: 24px;
    border: 3px solid #007bff;
    border-right-color: transparent;
    border-radius: 50%;
    animation: rotating .8s linear infinite;
    -webkit-animation: rotating .8s linear infinite;
}

@keyframes rotating {
    from {
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
    }
}

@-webkit-keyframes rotating {
    from {
        transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
    }
}

.overlay.small {
    background: #eee url(images/ui-loading.gif) center center no-repeat;
}

/*overlay*/

/*layout content*/
#content {
    overflow-x: hidden;
    width: 80%;
    flex-grow: 1;
    overflow-y: auto;
    /*margin: .2rem 0 0 .2rem;*/
}



/* ===== Scrollbar CSS ===== */
/* Firefox */
#content {
    scrollbar-width: thin;
    scrollbar-color: #41a2fe94 #f5f5f5;
}

/* Chrome, Edge, and Safari */
#content::-webkit-scrollbar {
    width: 16px;
    background-color: #f5f5f5;
}

#content::-webkit-scrollbar-track {
    background-color: #f5f5f5;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3); 
    border-radius: 10px;    
}

#content::-webkit-scrollbar-thumb {
    background-color: #41a2fe94;
    border-radius: 10px;
    border: 3px solid #f5f5f5;
    -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5); 
}

/*layout content*/

/*
  *exported from admin panel
  */
.imageInput {
    border-radius: 50%;
    width: 50px;
    height: 50px;
    object-fit: cover;
}

.list-table p {
    margin-bottom: 0;
}

/*
  *exported from admin panel
  */



/*added for new panel*/
.min-w-100 {
    min-width: 100%;
}

.fw-500 {
    font-weight: 500;
}

.bg-busy {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-online {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-offline {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.agent-profile {
    cursor: pointer;
}

#profile-menu , #services-menu {
    max-height: calc(100dvh - 60px);
    overflow: auto;
    z-index: 9999;
}

.userimage {
    border-radius: 50%;
    width: 50px;
    height: 50px;
    object-fit: cover;
    margin-right: 10px;
}

.agent-panel {
    min-height: 300px;
}

.user-messages {
    border-radius: 5px;
    font-size: .9rem;
}

.message-modal-top{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
}

.message-header,
.message-response-header {
    padding: 1rem;
}

.message-header {
    cursor: pointer;
    font-size: .8rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;

}

.new .message-header {
    font-weight: 700;
}

.read .message-header {
    color: #666;
}

.message-body {
    padding: 1rem;
    display: none;
}

.message-body p {
    color:#636364;
    margin:0;
}


.btn-guru-gray{
    background-color:#6c757d !important;
    border-color:#6c757d !important;
}

.message-date,
.message-response-date,
.message-category {
    color: #555;
}



.message-category {
    margin-right: 0;
    padding: .3rem 0;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.message-response {
    margin: 1rem 1rem 1rem 3rem;
    display: none;
    border: 1px solid #efefef;
    border-radius: 5px;
    background: #f1f1f1;
}

.message-reply {
    position: relative;
    display: none;
    padding: 0 1rem;
}

.message-response-header {
    font-weight: 400;
}

.message-response-tag {
    color: #3c763d;
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: .5px;
}

.expanded .message-header {
    padding-right: 2rem;
}

.expanded .message-body,
.expanded .message-response,
.expanded .message-reply {
    display: block;
}

.message-response .alert {
    margin-bottom: 0;
}

.message-response-body {
    padding: 0 1rem 1rem;
}

.message-header span,
.message-response-header span {
    display: inline-block;
    margin-right: 1rem;
}

.message-status {
    width: 8px;
    height: 8px;
    padding: 0;
    border-radius: 50%;
    background: #999;
    margin-left: .5rem;
}

.new .message-status {
    background: green;
}

.short-message {
    display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden;
            width: 300px;
            margin:0;
}

.message-modal-header{
    box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.15);
}

.modal-head-text{

}

.modal-head-text p {
    color: #0E2255;
    font-family: 'Poppins';
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    margin: 0;
   
}

.modal-head-text span {
    color: #000;
    font-family: 'Poppins';
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    padding-top: 8px;
}

.message-modal-header button {
    border-radius: 50%;
    border: 1px solid #000;
    width: 15px;
    height: 15px;
    padding: 5px !important;
    font-size:10px !important;
}




.message-attachments {
    margin-top: 1rem;
    padding: 1rem 0;
    border-radius: 4px;
    display: flex;
    justify-content: end;
    flex-direction: column;
    align-items: flex-start;
}

.attachment-audio {
    padding-left: 10px;
}


.message-attachments h3 {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    font-size: .8rem;
    color: #888;
    margin: 0 0 .5rem;
}

.attachment-item a {
    display: block;
    margin-right: .5rem;
    border: 1px solid #efefef;
    padding: 1rem;
    border-radius: 4px;
}

.attachment-item a:hover {
    background: #f1f1f1;
    transition: all .3s ease;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {

    color: #000 !important;
    background-color: transparent;
    font-weight: 700;
    border-bottom: 4px solid #0E2255;
    border-radius: 0;

}

.nav-pills {
    border-bottom: 2px solid #E0E0E0;
}



/*added for new panel*/


.title-bg-color{
    background-color: #C0CEDC;
}

.no-border{
    border: none;
}

.lb-radius{
    border-bottom-left-radius: 5px;
    border-top-left-radius: 5px;
}

.rb-radius{
    border-bottom-right-radius: 5px;
    border-top-right-radius: 5px;
}

.table.custom td ,.table.custom th {
    line-height: 200%;
    color: #464646;
}

.table.custom th {
font-weight: 500;
}

.success-header{
    background-color: #6FD096;
    color: #FFF;
}

.error-header{
    background-color: #E16A6A;
    color: #FFF;
}

.info-header{
    background-color: #FFF;
}




/*dashboard*/
.guru-dashboard-text-color {
color: #464646 !important;
}

.guru-dashboard-thead-bg > th {
    background-color: #F8F8F8;
}

/*dashboard*/

/*filter area*/

.filter-area {
    border-radius: 5px;
border: 1px solid #CFCFCF;
}

.form-check-input:checked {
    background-color: #6FD096;
    border-color: #6FD096;
}

.filter-area .form-label, .filter-area .form-check-label, .guru-form label {
    color: #464646;
font-family: 'Poppins';
font-style: normal;
font-weight: 600;
line-height: normal;
}

.filter-area .form-control, .guru-form .form-control:not(.inputGroup) {
    border-radius: 5px !important;
border: 1px solid #CED4DA;
}

.filter-area input, .guru-form input{
    color:  #878790;
font-family: "Poppins";
font-size: 14px;
font-style: normal;
font-weight: 400;
}

::-webkit-search-cancel-button,
::-webkit-clear-button {
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='15' viewBox='0 0 14 15' fill='none'%3E%3Cg clip-path='url(%23clip0_516_1581)'%3E%3Cpath d='M12.75 2.37695H10.125V1.37695C10.125 1.3082 10.0687 1.25195 9.99998 1.25195H9.12499C9.05624 1.25195 8.99999 1.3082 8.99999 1.37695V2.37695H4.99999V1.37695C4.99999 1.3082 4.94374 1.25195 4.87499 1.25195H3.99999C3.93124 1.25195 3.87499 1.3082 3.87499 1.37695V2.37695H1.25C0.973437 2.37695 0.75 2.60039 0.75 2.87695V13.252C0.75 13.5285 0.973437 13.752 1.25 13.752H12.75C13.0265 13.752 13.25 13.5285 13.25 13.252V2.87695C13.25 2.60039 13.0265 2.37695 12.75 2.37695ZM12.125 12.627H1.875V6.68945H12.125V12.627ZM1.875 5.62695V3.50195H3.87499V4.25195C3.87499 4.3207 3.93124 4.37695 3.99999 4.37695H4.87499C4.94374 4.37695 4.99999 4.3207 4.99999 4.25195V3.50195H8.99999V4.25195C8.99999 4.3207 9.05624 4.37695 9.12499 4.37695H9.99998C10.0687 4.37695 10.125 4.3207 10.125 4.25195V3.50195H12.125V5.62695H1.875Z' fill='%23757575'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_516_1581'%3E%3Crect width='14' height='14' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");  color: rgba(0, 0, 0, 0.54);
  cursor: pointer;
  height: 1.5rem;
  margin-right: 0;
  width: 1.5rem;
}

::-webkit-calendar-picker-indicator {
  color: rgba(0, 0, 0, 0);
  opacity: 1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='15' viewBox='0 0 14 15' fill='none'%3E%3Cg clip-path='url(%23clip0_516_1581)'%3E%3Cpath d='M12.75 2.37695H10.125V1.37695C10.125 1.3082 10.0687 1.25195 9.99998 1.25195H9.12499C9.05624 1.25195 8.99999 1.3082 8.99999 1.37695V2.37695H4.99999V1.37695C4.99999 1.3082 4.94374 1.25195 4.87499 1.25195H3.99999C3.93124 1.25195 3.87499 1.3082 3.87499 1.37695V2.37695H1.25C0.973437 2.37695 0.75 2.60039 0.75 2.87695V13.252C0.75 13.5285 0.973437 13.752 1.25 13.752H12.75C13.0265 13.752 13.25 13.5285 13.25 13.252V2.87695C13.25 2.60039 13.0265 2.37695 12.75 2.37695ZM12.125 12.627H1.875V6.68945H12.125V12.627ZM1.875 5.62695V3.50195H3.87499V4.25195C3.87499 4.3207 3.93124 4.37695 3.99999 4.37695H4.87499C4.94374 4.37695 4.99999 4.3207 4.99999 4.25195V3.50195H8.99999V4.25195C8.99999 4.3207 9.05624 4.37695 9.12499 4.37695H9.99998C10.0687 4.37695 10.125 4.3207 10.125 4.25195V3.50195H12.125V5.62695H1.875Z' fill='%23757575'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_516_1581'%3E%3Crect width='14' height='14' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");  width: 14px;
  height: 18px;
  cursor: pointer;
  border-radius: 50%;
  margin-left: .5rem;
}




/*fiter area*/


/*appoinments list*/


.services-button-area .services-button-head {
    margin:0;
    color: #0E2255;
font-family: 'Poppins';
font-size: 16px;
font-weight: 600;
}

.services-button-area .services-button-exp{
    color: #9C9C9C;
    font-family: 'Poppins';
    font-size: 13px;
    font-weight: 400;
    margin: 0;
}

.services-add-buttons > i {
    color:#0e2255;
    font-size:2em;
}

.services-head {
color: #464646;
margin:0;
font-family: 'Poppins';
font-size: 20px;
font-weight: 500;
}

.services-cards > i {
    padding: 5px 12px;
    font-size:20px;
    border-radius: 5px;
    color:#fff;
}

.bg-green {
    background:#8ED06F;
}

.bg-red {
    background:#D06F6F;
}

.bg-orange {
    background: #E99F5B;
}

.bg-blue{
    background: #73C0EB;
}

.bg-purple {
    background: #9F859D;
}

.bootstrap-select>.dropdown-toggle {
    background:white;
    border:1px solid #CED4DA;
    border-radius: 5px;
}

.service-infos  i {
    font-size:1em;
    color:#858585;
}

.service-infos  p {
    color:#858585;
    margin:0;
}


/* appointments list */

/*footer*/
.toast-container-parent {
    z-index: 3;
    left: 50%;
    transform: translateX(-50%);
    max-width: 1600px;
    
}
/*footer*/

/* ==========================================================================
   Notifications
   ========================================================================== */

   .notification {
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    padding: 2rem 1rem;
    background: #fff;
    box-shadow: 0 0 15px rgba(0, 0, 0, .1);
    color: #0288d1;
    z-index: 1000;
    text-align: center;
    width: 100%;
    max-width: 360px;
}

.info-message {
    font-size: .9rem;
    padding-bottom: 1rem;
}

#fb-permission {
    display: none;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

#fb-message {
    top: 60px;
    bottom: auto;
    border-radius: 5px;
}

.message-title {
    margin-top: 0;
    color: #333;
    font-size: 1.2rem;
}

.action-btns .btn {
    font-size: .9rem;
    padding: .5rem 1rem;
    margin: 0 .2rem;
}

a.reject-request {
    color: red;
}

.action-btns .btn i {
    margin-right: .5rem;
    margin-left: 0;
}

.message-container.open {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .25);
    z-index: 9999999;
}

.user-messages {
    border-radius: 5px;
    border: 1px solid #efefef;
    font-size: .9rem;
}

.user-messages .message {
    border-bottom: 1px solid #efefef;
}

.message-header,
.message-response-header {
    padding: 1rem;
}

.message-header {
    cursor: pointer;
    font-size: .8rem;
    align-items: center;
}

.new .message-header {
    font-weight: 700;
}

.read .message-header {
    color: #666;
}

.message-body {
    padding: 1rem;
    display: none;
}

.message-date,
.message-response-date,
.message-category {
    color: #555;
}

.message-history {
    float: right;
    margin-bottom: 1rem;
}

.message-category {
    margin-right: 0;
    padding: .3rem 0;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.message-response {
    margin: 1rem 1rem 1rem 3rem;
    display: none;
    border: 1px solid #efefef;
    border-radius: 5px;
    background: #f1f1f1;
}

.message-reply {
    position: relative;
    display: none;
    padding: 1rem 1.5rem;
}

.message-response-header {
    font-weight: 400;
}

.message-response-tag {
    color: #3c763d;
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: .5px;
}

.expanded .message-header {
    padding-right: 2rem;
}

.expanded .message-body,
.expanded .message-response,
.expanded .message-reply {
    display: block;
}

.message-response .alert {
    margin-bottom: 0;
}

.message-response-body {
    padding: 0 1rem 1rem;
}

.message-header span,
.message-response-header span {
    display: inline-block;
    margin-right: 1rem;
}

.message-status {
    width: 8px;
    height: 8px;
    padding: 0;
    border-radius: 50%;
    background: #999;
}

.new .message-status {
    background: green;
}

.userimage{
    border-radius: 50%;
    width: 50px;
    height: 50px;
    object-fit: cover;
    margin-right: 10px;
}

.message-modal {
    position: absolute;
    top: 80px;
    bottom: 80px;
    left: auto;
    right: auto;
    width: 100%;
    max-width: 800px;
    background: #fff;
    z-index: 10000;
    box-shadow: 0 0 25px rgba(0, 0, 0, .1);
    border-radius: 5px;
    text-align: left;
    overflow-y: auto;
}

.message-modal-close {
    position: absolute;
    top: .5rem;
    right: .3rem;
}

.message-modal-close a {
    display: block;
    width: 36px;
    height: 36px;
    line-height: 36px;
    text-align: center;
    color: #666;
    border-radius: 5px;
    font-size: 1.4rem;
}

.message-modal-close a:hover {
    background: #f1f1f1;
    transition: background .3s ease;
}

.message-modal .message-header {
    border-bottom: 1px solid #efefef;
}

.message-modal .message-body {
    padding: 1rem 2rem;
}

.message-reply-input {
    height: 200px;
    line-height: 1.8;
    padding: .5rem 1rem;
    border: 1px solid #dfdfdf;
    width: 100%;
    line-height: 36px;
}

.message-attachments {
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid #efefef;
    border-radius: 4px;
    display: flex;
    justify-content: end;
}

.attachment-audio {
    padding-left: 10px;
}

.message-attachments h3 {
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    font-size: .8rem;
    color: #888;
    margin: 0 0 .5rem;
}

.attachment-item a {
    display: block;
    margin-right: .5rem;
    border: 1px solid #efefef;
    padding: 1rem;
    border-radius: 4px;
}

.attachment-item a:hover {
    background: #f1f1f1;
    transition: all .3s ease;
}


.fad:before {
    color: #1E3050;
}
.fad:after {
    color: #C0CEDC;
}

.event_price_info p {
    font-family: 'Poppins';
font-size: 14px !important;
font-weight: 400;
color: #464646 !important;
}

.mce-container{
    background: #F2F4F7 !important;
    border-radius: 5px !important;
    border-bottom: none;
}

.mce-container-body {
    border-radius: 5px !important;
}

.mce-path {
    padding: 4px;
}

.mce-top-part::before {
    content: '';
    position: absolute;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    pointer-events: none;
}

.mce-btn-group:not(:first-child) {
    border-left: none;
}

.mce-btn-group .mce-btn {
    background-color: #F2F4F7;
}

.mce-statusbar {
    border: none !important;
    background: #FFF !important;
}

.mce-panel {
    border-bottom: none;
}



.guru-btn , .btn-guru-green {
    font-size: 0.9rem !important;
    border-color: transparent !important;
}

.grenButton , .btn-guru-green {
    background-color: #6FD096 !important;
    color: #FFF !important;
    font-size: 0.9rem !important;
}

.grenButton:hover, .btn-guru-green:hover{
    background-color: #549F72 !important;
    color: #FFF !important;
}

/* Modal Genel Stilleri */
.onboarding-custom-modal {
    top: auto;
    bottom: 80px;
    right: 20px;
    left: auto; 
    width: 360px;
    height: auto;
    max-width: calc(100% - 40px);
    max-height: calc(100vh - 15% - 40px);
    margin: 0;
    transform: translateY(10px);
}

.onboarding-custom-modal.show {
    opacity: 1;
    transform: translateY(0);
}

.onboarding-custom-modal .modal-dialog.onboarding-dialog-custom {
    margin: 0;
    width: 100%;
    height: 100%; 
    max-width: none;
    transform: none !important;
}

.onboarding-custom-modal .modal-content {
    border: 1px solid #adb5bd;
    background-color: #ffffff;
    border-radius: 15px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
    color: #343a40;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}

.onboarding-custom-modal .modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 15px;
    border-bottom: 1px solid #e9ecef;
    background-color: #ebebeb;
    flex-shrink: 0;
    border-top-left-radius: calc(15px - 1px);
    border-top-right-radius: calc(15px - 1px);
}

.onboarding-custom-modal .modal-header h2 {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #2e3f6aff;
}

.onboarding-custom-modal .custom-close-button {
    border: none;
    line-height: 1;
    color: #2e3f6aff !important;
    padding: 0 5px;
    opacity: 0.7;
}
.onboarding-custom-modal .custom-close-button:hover {
    color: #2e3f6aff !important;
    opacity: 1;
}

.onboarding-custom-modal .modal-loader-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.75);
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: inherit;
}

.onboarding-custom-modal .loader-spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #007bff;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    animation: spin 1s linear infinite;
}

.stepButtonText {
  display: inline-block;
  margin-right: 6px;
}

@media (max-width: 768px) {
  .stepButtonText {
    display: none;
  }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.onboarding-custom-modal .progress-container {
    background-color: #e9ecef;
    border-radius: 5px;
    margin: 15px 15px 5px 15px;
    height: 6px;
    flex-shrink: 0;
}

.onboarding-custom-modal .progress-bar {
    height: 100%;
    width: 0%;
    background-color: #45b18dff;
    border-radius: 5px;
    transition: width 0.4s ease-in-out;
}

.onboarding-custom-modal .modal-body.steps-list {
    padding: 5px 10px 10px 10px;
    margin: 0 5px;
    flex-grow: 1;
}

/* Diğer tüm adım stilleri .onboarding-custom-modal ile sarmalanacak */
.onboarding-custom-modal .step-item {
    padding: 10px 10px;
    margin-bottom: 3px;
    border-radius: 6px;
    transition: background-color 0.2s ease;
    cursor: default;
}
.onboarding-custom-modal .step-item.active {
    background-color: #e6f7ff;
}
.onboarding-custom-modal .step-header {
    display: flex;
    align-items: center;
    font-weight: 500;
    color: #2e3f6aff;
}
.onboarding-custom-modal .step-header .active-step-indicator {
    display: none;
    margin-left: 5px;
}
.onboarding-custom-modal .step-item.active .step-header .active-step-indicator {
    display: inline-block;
}
.onboarding-custom-modal .step-icon {
    margin-right: 10px;
    color: #2e3f6aff;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}
.onboarding-custom-modal .step-title {
    flex-grow: 1;
    margin-right: 5px;
    color: #2e3f6aff;
}
.onboarding-custom-modal .checkmark {
    color: #45b18dff;
    font-size: 0.9em;
    display: none;
    flex-shrink: 0;
}
.onboarding-custom-modal .step-item.completed .step-header {
    color: #adb5bd;
}
.onboarding-custom-modal .step-item.completed .step-icon {
    color: #adb5bd;
}
.onboarding-custom-modal .step-item.completed .checkmark {
    display: inline-block;
}
.onboarding-custom-modal .step-item.completed .step-details {
    display: none !important;
}
.onboarding-custom-modal .step-details {
    display: none;
    padding-left: 28px;
    margin-top: 8px;
}
.onboarding-custom-modal .step-item.active .step-details {
    display: block;
}
.onboarding-custom-modal .step-details p {
    font-size: 0.85rem;
    color: #6c757d;
    margin: 0 0 10px 0;
    line-height: 1.4;
}
.onboarding-custom-modal .complete-step-btn {
    background-color: unset;
    color: #2e3f6aff;
    border: 2px solid #2e3f6aff;
    padding: 6px 12px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 0.85rem;
    font-weight: 500;
}
.onboarding-custom-modal .complete-step-btn:hover {
    background-color: #ffffff;
}

.onboarding-custom-modal .modal-footer {
    padding: 10px 15px;
    border-top: 1px solid #e9ecef;
    background-color: #ebebeb;
    flex-shrink: 0;
    justify-content: flex-end;
    display: flex; 
    border-bottom-left-radius: calc(15px - 1px);
    border-bottom-right-radius: calc(15px - 1px);
}

.onboarding-custom-modal .dismiss-button {
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    font-size: 0.8rem;
    padding: 5px 10px;
    border-radius: 5px;
}
.onboarding-custom-modal .dismiss-button:hover {
    text-decoration: none;
    color: #343a40;
    background-color: #ffffff;
}

.step-title-popover {
    position: absolute;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 10px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
    z-index: 1060;
    max-width: 300px;
    font-size: 0.9em;
    color: #333;
    display: none;
    word-wrap: break-word;
}

.hastaAdi {
    font-family: 'Poppins';
    font-size:17px;
    color:#2D3748;
    font-weight: 700;
}

.muayeneModalBtn {
    background: #0369A1;
    font-family: 'Poppins';
    color:white;
    font-weight: 400;
    border-color: #0369A1;
    font-size:14px;
}

.muayeneGreenBtn {
    background: #6FD096;
    border-color: #6FD096;
}

.ui-widget.ui-widget-content{
    z-index: 9999;
}

.hastaBilgi {
    background: #E9ECEF;
    padding: 10px;
    margin-bottom: 10px;
    border-radius: 4px;
}


/* GP-2316: Ücretli mesaj — yanıt formu (.gmsg), liste/detay (.mrp) ve ses oynatıcı. Müşteri formu kopyası main.css içinde. */
.gmsg, .mrp { --gm-primary: #0E2154; --gm-text: #1f2433; --gm-muted: #5b6270; --gm-border: #dfe2e8; --gm-line: #e6e8ed; --gm-soft: #f4f6fa; --gm-red: #e5484d; --gm-green: #1d6b3e; }
.mrp [hidden] { display: none !important; }

/* ---- Yazma formu ---- */
.gmsg { display: flex; flex-direction: column; color: var(--gm-text); text-align: left; }
.gmsg [hidden] { display: none !important; }
.gmsg-form, .gmsg-sent { display: flex; flex-direction: column; gap: 16px; }
.gmsg-info { display: flex; flex-wrap: wrap; gap: 10px 16px; justify-content: space-between; align-items: center; background: var(--gm-soft); border-radius: 10px; padding: 12px 14px; }
.gmsg-info-main { min-width: 0; flex: 1 1 260px; }
.gmsg-info-title { font-size: 14px; }
.gmsg-muted { font-size: 12.5px; color: var(--gm-muted); line-height: 1.5; }
.gmsg-small { font-size: 12px; }
.gmsg-strong { color: var(--gm-text); }
.gmsg-nowrap { white-space: nowrap; }
.gmsg-avg { font-size: 12.5px; color: var(--gm-green); margin-top: 6px; font-weight: 500; }
.gmsg-field { display: flex; flex-direction: column; gap: 6px; }
.gmsg-label { font-size: 13px; font-weight: 500; }
.gmsg textarea { width: 100%; box-sizing: border-box; min-height: 130px; resize: vertical; border: 1px solid var(--gm-border); border-radius: 10px; padding: 12px 14px; font-size: 15px; line-height: 1.55; outline: none; color: var(--gm-text); font-family: inherit; }
.gmsg textarea:focus { border-color: var(--gm-primary); }
.gmsg-count { align-self: flex-end; font-size: 11.5px; color: #6b7280; white-space: nowrap; }
.gmsg-count.warning { color: var(--gm-red); }
.gmsg-alert { font-size: 12.5px; border-radius: 8px; padding: 8px 12px; line-height: 1.5; }
.gmsg-alert-error { color: #c0353a; background: #fff6f6; border: 1px solid #f3c4c6; }
.gmsg-alert-warn { color: #8a5a00; background: #fff7e6; border: 1px solid #f5dca6; }
.gmsg-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.gmsg-row-end { justify-content: flex-end; }
.gmsg-btn { height: 44px; flex: none; white-space: nowrap; padding: 0 16px; border: 1px solid var(--gm-border); background: #fff; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 14px; color: var(--gm-text); cursor: pointer; font-family: inherit; }
.gmsg-btn-sm { height: 40px; padding: 0 14px; font-size: 13px; }
.gmsg-btn-primary { background: var(--gm-primary); border-color: var(--gm-primary); color: #fff; font-weight: 600; }
.gmsg-btn-primary:disabled { background: #b8c6dd; border-color: #b8c6dd; cursor: not-allowed; }
.gmsg-btn-block { width: 100%; height: 48px; }
.gmsg-btn-pill { border-radius: 22px; padding: 0 16px 0 6px; }
.gmsg-mic { width: 32px; height: 32px; flex: none; border-radius: 50%; background: var(--gm-primary); color: #fff; display: flex; align-items: center; justify-content: center; }
.gmsg-link-btn { height: 44px; padding: 0 14px; border: none; background: none; font-size: 14px; color: var(--gm-muted); cursor: pointer; font-family: inherit; }
.gmsg-icon-btn { width: 34px; height: 34px; flex: none; border: none; background: none; border-radius: 50%; color: #3b4150; cursor: pointer; display: flex; align-items: center; justify-content: center; padding: 0; }
.gmsg-icon-btn.danger { color: var(--gm-red); }
.gmsg-atts { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.gmsg-thumb { position: relative; width: 88px; height: 88px; border-radius: 8px; overflow: hidden; background: #eef0f4; flex: none; background-size: cover; background-position: center; }
.gmsg-thumb .gmsg-x { position: absolute; top: 4px; right: 4px; width: 24px; height: 24px; border: none; border-radius: 50%; background: rgba(20,26,40,.7); color: #fff; font-size: 12px; cursor: pointer; padding: 0; }
.gmsg-thumb .gmsg-thumb-size { position: absolute; left: 0; right: 0; bottom: 0; padding: 3px 6px; background: rgba(20,26,40,.55); color: #fff; font-size: 10px; }
.gmsg-chip { display: flex; align-items: center; gap: 8px; border: 1px solid #e3e6eb; border-radius: 8px; padding: 6px 4px 6px 10px; font-size: 12.5px; max-width: 100%; box-sizing: border-box; }
.gmsg-chip .gmsg-ext { color: #fff; font-size: 9px; font-weight: 700; padding: 3px 5px; border-radius: 3px; background: #2563eb; }
.gmsg-chip .gmsg-ext.audio { background: #7c3aed; }
.gmsg-chip .gmsg-ext.pdf { background: var(--gm-red); }
.gmsg-chip .gmsg-name { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.gmsg-chip .gmsg-x { width: 28px; height: 28px; border: none; background: none; color: #9aa1ad; cursor: pointer; padding: 0; }
.gmsg-voice { display: flex; align-items: center; gap: 8px; background: var(--gm-soft); border: 1px solid #dfe5f0; border-radius: 26px; padding: 5px 6px 5px 5px; flex: 1 1 300px; max-width: 440px; min-width: 0; box-sizing: border-box; }
.gmsg-play { width: 38px; height: 38px; flex: none; border: none; border-radius: 50%; background: var(--gm-primary); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.gmsg-bars { display: flex; align-items: center; gap: 2px; height: 28px; flex: 1; min-width: 0; overflow: hidden; }
.gmsg-bars > i { width: 3px; flex: none; border-radius: 2px; background: #b9c1ce; }
.gmsg-bars > i.on { background: var(--gm-primary); }
.gmsg-voice-time { display: flex; flex-direction: column; align-items: flex-end; font-size: 11px; line-height: 1.3; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gmsg-starting { display: flex; align-items: center; gap: 10px; border: 1px solid #dfe5f0; border-radius: 28px; padding: 12px 16px; font-size: 13px; color: #3b4150; }
.gmsg-dot { width: 10px; height: 10px; flex: none; border-radius: 50%; background: var(--gm-red); animation: gmsgPulse 1s infinite; }
.gmsg-dot-grey { background: #9aa1ad; }
@keyframes gmsgPulse { 0%, 100% { opacity: 1 } 50% { opacity: .25 } }
.gmsg-rec { display: flex; flex-direction: column; gap: 6px; }
.gmsg-rec-bar { display: flex; align-items: center; gap: 10px; background: #fff5f5; border: 1px solid #f6d0d2; border-radius: 30px; padding: 6px; }
.gmsg-rec-time { font-size: 17px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--gm-red); }
.gmsg-rec.late .gmsg-rec-time { color: #c4410c; }
.gmsg-live-bars { justify-content: flex-end; height: 32px; }
.gmsg-live-bars > i { background: var(--gm-red); opacity: .75; }
.gmsg-rec-stop { height: 44px; flex: none; padding: 0 16px; border: none; border-radius: 22px; background: var(--gm-red); color: #fff; display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; cursor: pointer; font-family: inherit; }
.gmsg-rec-progress { height: 4px; background: #f1e3e4; border-radius: 2px; overflow: hidden; margin: 0 22px; }
.gmsg-rec-progress > div { height: 100%; width: 0; background: var(--gm-red); }
.gmsg-rec.late .gmsg-rec-progress > div { background: #c4410c; }
.gmsg-rec-meta { display: flex; justify-content: space-between; font-size: 12px; padding: 0 22px; color: var(--gm-muted); font-variant-numeric: tabular-nums; }
.gmsg-mic-err { display: flex; gap: 12px; align-items: flex-start; border: 1px solid #f3c4c6; background: #fff8f8; border-radius: 12px; padding: 14px; }
.gmsg-mic-err-icon { width: 36px; height: 36px; flex: none; border-radius: 50%; background: #fdeceb; color: var(--gm-red); display: flex; align-items: center; justify-content: center; }
.gmsg-mic-err-body { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.gmsg-mic-err-title { font-weight: 600; font-size: 14px; }
.gmsg-mic-err-text { font-size: 13px; color: #3b4150; line-height: 1.5; }
.gmsg-meters { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.gmsg-meter { flex: 1 1 180px; min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.gmsg-meter-head { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; color: var(--gm-muted); white-space: nowrap; }
.gmsg-meter-bar { height: 4px; border-radius: 2px; background: #e8ebf0; overflow: hidden; }
.gmsg-meter-bar > div { height: 100%; width: 0; background: var(--gm-primary); }
.gmsg-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; padding-top: 14px; border-top: 1px solid #eceef2; }
.gmsg-send { height: 48px; padding: 0 24px; font-size: 15px; max-width: 100%; }
.gmsg-sent-head { display: flex; gap: 14px; align-items: flex-start; }
.gmsg-sent-check { width: 48px; height: 48px; border-radius: 50%; background: #22a35a; color: #fff; display: flex; align-items: center; justify-content: center; flex: none; }
.gmsg-sent-title { font-size: 20px; font-weight: 600; }
.gmsg-sent-box { font-size: 13.5px; color: #3b4150; background: var(--gm-soft); border-radius: 10px; padding: 12px 14px; line-height: 1.55; }
.gmsg-caps { font-size: 12px; font-weight: 600; letter-spacing: .05em; color: var(--gm-muted); }
.gmsg-sent-text { font-size: 14px; line-height: 1.55; white-space: pre-wrap; word-break: break-word; }
.gmsg-modal { position: fixed; inset: 0; background: rgba(20,26,40,.45); display: flex; align-items: center; justify-content: center; padding: 16px; z-index: 10050; }
.gmsg-modal-box { width: 100%; max-width: 440px; background: #fff; border-radius: 14px; padding: 24px; box-sizing: border-box; display: flex; flex-direction: column; gap: 16px; box-shadow: 0 20px 50px rgba(0,0,0,.2); }
.gmsg-modal-title { font-size: 19px; font-weight: 600; }
.gmsg-summary { background: var(--gm-soft); border-radius: 10px; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; font-size: 13.5px; }
.gmsg-summary > div { display: flex; justify-content: space-between; gap: 10px; }
.gmsg-summary b { text-align: right; }
.gmsg-refund-note { font-size: 13px; line-height: 1.55; color: var(--gm-green); background: #eaf7ef; border-radius: 10px; padding: 12px; }
.gmsg-note { font-size: 12.5px; color: var(--gm-muted); line-height: 1.5; }
.gmsg-note b { color: var(--gm-text); }
.gmsg-meter-inline { flex: 0 1 210px; min-width: 170px; display: flex; flex-direction: column; gap: 5px; }
.gmsg-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.gmsg-actions .gmsg-send { margin-left: auto; }
.gmsg-modal-text { font-size: 14px; line-height: 1.6; color: #3b4150; }
.gmsg-editing { font-size: 12.5px; color: #8a5a00; background: #fff7e6; border: 1px solid #f5dca6; border-radius: 8px; padding: 8px 12px; }

/* ---- Uzman: liste ---- */
.mrp { color: var(--gm-text); }
.mrp-filters { display: flex; gap: 8px; align-items: center; margin-bottom: 16px; }
.mrp-select { position: relative; display: flex; align-items: center; flex: 0 0 210px; }
.mrp-select.range { flex: 0 0 160px; }
.mrp-select select { appearance: none; -webkit-appearance: none; width: 100%; height: 42px; padding: 0 38px 0 16px; border: 1px solid var(--gm-border); border-radius: 21px; background: #fff; font-size: 13.5px; font-weight: 500; color: var(--gm-text); cursor: pointer; outline: none; box-shadow: 0 1px 2px rgba(20,26,40,.05); }
.mrp-select svg { position: absolute; right: 14px; pointer-events: none; }
.mrp-list { background: #fff; border: 1px solid var(--gm-line); border-radius: 12px; overflow: hidden; }
.mrp-row { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; padding: 14px clamp(12px, 2vw, 18px); border-bottom: 1px solid #eceef2; background: #fcfcfd; color: inherit; text-decoration: none; }
.mrp-row:last-child { border-bottom: none; }
.mrp-row:hover { background: #f7f9fd; color: inherit; }
.mrp-row.waiting { background: #fff; }
.mrp-row.waiting .mrp-name, .mrp-row.waiting .mrp-text { font-weight: 600; }
.mrp-who { flex: 1 1 200px; min-width: 0; display: flex; align-items: center; gap: 10px; }
.mrp-dot { width: 8px; height: 8px; flex: none; border-radius: 50%; background: transparent; }
.mrp-row.waiting .mrp-dot { background: var(--gm-primary); }
.mrp-avatar { width: 40px; height: 40px; flex: none; border-radius: 50%; background: #dbe6fb; object-fit: cover; }
.mrp-avatar.sm { width: 34px; height: 34px; }
.mrp-avatar.lg { width: 44px; height: 44px; }
.mrp-name { font-size: 14px; }
.mrp-date { font-size: 12px; color: var(--gm-muted); }
.mrp-body { flex: 3 1 280px; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.mrp-text { font-size: 13.5px; line-height: 1.5; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.mrp-att { font-size: 12px; color: var(--gm-muted); }
.mrp-end { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; margin-left: auto; }
.mrp-pill { font-size: 12px; font-weight: 600; padding: 5px 10px; border-radius: 12px; white-space: nowrap; background: #eef0f4; color: var(--gm-muted); }
.mrp-pill.left { background: #fff7e6; color: #8a5a00; }
.mrp-pill.urgent { background: #fdeceb; color: #c0353a; }
.mrp-pill.answered { background: #eaf7ef; color: var(--gm-green); }
.mrp-btn { height: 40px; padding: 0 16px; border-radius: 8px; border: 1px solid var(--gm-border); background: #fff; color: var(--gm-text); font-size: 13px; font-weight: 600; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: 6px; cursor: pointer; text-decoration: none; }
.mrp-btn:hover { color: var(--gm-text); }
.mrp-btn.primary { background: var(--gm-primary); border-color: var(--gm-primary); color: #fff; }
.mrp-btn.primary:hover { color: #fff; }
.mrp-empty { padding: 40px 20px; text-align: center; font-size: 14px; color: var(--gm-muted); }
.mrp-badge { min-width: 20px; height: 20px; padding: 0 6px; box-sizing: border-box; border-radius: 10px; background: #e5484d; color: #fff; font-size: 11px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; }

/* ---- Uzman: detay ---- */
.mrd-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 16px; }
.mrd-back { height: 40px; padding: 0 12px 0 6px; border: 1px solid #e3e6eb; background: #fff; border-radius: 8px; font-size: 13px; display: inline-flex; align-items: center; gap: 4px; color: var(--gm-text); text-decoration: none; cursor: pointer; }
.mrd-back span { font-size: 18px; line-height: 1; }
.mrd-reply-top { display: none; align-items: center; gap: 10px; margin-bottom: 16px; }
.mrd-reply-top .mrd-sub { font-size: 12px; color: var(--gm-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mrd-grid { display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-start; }
.mrd-main { flex: 999 1 460px; min-width: 0; display: flex; flex-direction: column; background: #fff; border: 1px solid var(--gm-line); border-radius: 12px; overflow: hidden; }
.mrd-thread { padding: clamp(14px, 2.5vw, 24px); display: flex; flex-direction: column; gap: 16px; background: #f7f8fa; }
.mrd-day { align-self: center; font-size: 11.5px; color: var(--gm-muted); background: #e8eaef; padding: 3px 10px; border-radius: 10px; white-space: nowrap; }
.mrd-msg { display: flex; gap: 10px; max-width: min(600px, 100%); }
.mrd-msg.mine { align-self: flex-end; flex-direction: row-reverse; }
.mrd-bubble { min-width: 0; background: #fff; border: 1px solid var(--gm-line); border-radius: 4px 14px 14px 14px; padding: 14px; display: flex; flex-direction: column; gap: 12px; }
.mrd-msg.mine .mrd-bubble { background: #e6efff; border-color: #e6efff; border-radius: 14px 4px 14px 14px; gap: 10px; }
.mrd-meta { font-size: 12px; color: var(--gm-muted); }
.mrd-meta b { color: var(--gm-text); }
.mrd-meta .ok { color: var(--gm-green); }
.mrd-text { font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.mrd-files { display: flex; gap: 10px; flex-wrap: wrap; align-items: flex-end; }
.mrd-img { width: 120px; height: 90px; border-radius: 8px; background: #eef0f4 center / cover no-repeat; display: block; }
.mrd-doc { display: flex; align-items: center; gap: 8px; border: 1px solid #e3e6eb; border-radius: 8px; padding: 8px 10px; font-size: 12.5px; background: #fff; max-width: 100%; min-width: 0; }
.mrd-doc .gmsg-ext { color: #fff; font-size: 9px; font-weight: 700; padding: 3px 5px; border-radius: 3px; background: #2563eb; }
.mrd-doc .gmsg-ext.pdf { background: var(--gm-red); }
.mrd-doc .gmsg-ext.audio { background: #7c3aed; }
.mrd-doc .name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.mrd-doc .size { color: var(--gm-muted); white-space: nowrap; }
.mrd-files .gmsg-voice { flex: 1 1 220px; max-width: 300px; }
.mrd-msg.mine .gmsg-voice { background: #fff; border-color: #fff; }
.mrd-banner { border-top: 1px solid var(--gm-line); padding: 14px clamp(14px, 2.5vw, 24px); font-size: 13.5px; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; background: #f4f5f7; color: var(--gm-muted); }
.mrd-banner.ok { background: #eaf7ef; border-top-color: #cdebd8; color: var(--gm-green); }
.mrd-banner.ok .mrp-btn { border-color: #9fd5b4; color: var(--gm-green); font-weight: 500; }
.mrd-compose { border-top: 1px solid var(--gm-line); padding: 14px clamp(14px, 2.5vw, 24px) 18px; }
.mrd-quote { display: none; background: #f7f8fa; border: 1px solid var(--gm-line); border-radius: 10px; padding: 12px; flex-direction: column; gap: 6px; margin-bottom: 12px; }
.mrd-quote-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; font-size: 12px; color: var(--gm-muted); }
.mrd-quote-head b { color: var(--gm-text); }
.mrd-quote-head button { height: 32px; padding: 0 6px; border: none; background: none; color: var(--gm-primary); font-size: 12.5px; cursor: pointer; }
.mrd-quote-text { font-size: 13.5px; line-height: 1.55; color: #3b4150; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.mrd-quote.open .mrd-quote-text { display: block; }
.mrd-caps { font-size: 12px; font-weight: 600; letter-spacing: .05em; color: var(--gm-muted); }
.mrd-side { flex: 1 1 270px; min-width: 0; background: #fff; border: 1px solid var(--gm-line); border-radius: 12px; padding: 16px; box-sizing: border-box; display: flex; flex-direction: column; gap: 14px; }
.mrd-side-head { display: flex; align-items: center; gap: 12px; }
.mrd-side-head > div { flex: 1; min-width: 0; }
.mrd-side-toggle { display: none; height: 36px; padding: 0 12px; border: 1px solid var(--gm-border); background: #fff; border-radius: 8px; font-size: 12.5px; cursor: pointer; }
.mrd-left { background: var(--gm-soft); border-radius: 8px; padding: 10px; color: var(--gm-muted); }
.mrd-left.left { background: #fff7e6; color: #8a5a00; }
.mrd-left.urgent { background: #fdeceb; color: #c0353a; }
.mrd-left small { display: block; font-size: 11px; }
.mrd-left strong { font-size: 14.5px; font-weight: 600; }
.mrd-form { border-top: 1px solid #eceef2; padding-top: 14px; display: flex; flex-direction: column; gap: 10px; }
.mrd-form dl { display: grid; grid-template-columns: minmax(90px, auto) 1fr; gap: 8px 12px; font-size: 13px; margin: 0; }
.mrd-form dt { color: var(--gm-muted); font-weight: 400; }
.mrd-form dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.mrd-history { height: 42px; border: 1px solid #14215b; background: #fff; color: #14215b; border-radius: 8px; font-size: 13px; font-weight: 500; cursor: pointer; }
.mrd-cta { display: none; position: sticky; bottom: 0; z-index: 4; margin-top: 16px; background: #fff; border-top: 1px solid var(--gm-line); padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); align-items: center; gap: 12px; box-shadow: 0 -6px 16px rgba(20,26,40,.06); }
.mrd-cta-left { flex: none; font-size: 12px; line-height: 1.35; color: var(--gm-muted); }
.mrd-cta .mrp-btn { flex: 1 1 auto; height: 48px; border-radius: 10px; font-size: 15px; }

@media (max-width: 1099px) { .mrd-side { order: -1; } }
@media (max-width: 899px) {
    .mrp-select { flex: 1 1 0; }
    .mrd-side-toggle { display: inline-flex; align-items: center; }
    .mrd-side:not(.open) .mrd-side-body { display: none; }
    .mrd.can-reply .mrd-cta { display: flex; }
    .mrd.can-reply:not(.replying) .mrd-compose { display: none; }
    .mrd.replying .mrd-top, .mrd.replying .mrd-thread, .mrd.replying .mrd-side, .mrd.replying .mrd-cta { display: none; }
    .mrd.replying .mrd-reply-top { display: flex; }
    .mrd.replying .mrd-quote { display: flex; }
    .mrd.replying .mrd-compose { border-top: none; }
    .gmsg-actions .gmsg-send { flex: 1 0 100%; }
}
