.card-certificate {
    box-shadow: 1px 0px 4px 1px rgba(0, 0, 0, 0.1);
}
.snack {
    background-color: #2fac66 !important;
    border-radius: 30px !important;
    text-align: left !important;
    font-weight: bold;
}
.bottom-center p{
    text-align: center;
    width: 100% !important;
}

.blog-filter {
    background-color: #f0f3f5;
    padding: 50px 0;
}

.blog-filter .blog-search .search-group {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.06);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.06);
    position: relative;
    width: 600px;
    margin: 0 auto;
    border-radius: 50px;
}

.blog-filter .blog-search .search-group .input {
    width: 100%;
    height: 50px;
    border: 1px solid #eaeaea;
    border-radius: 50px;
    padding: 0 20px 0 60px;
}

.blog-filter .blog-search .search-group .btn-search {
    padding: 0;
    min-width: unset;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    position: absolute;
    left: 3px;
    top: 3px;
    color: white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #750c98;
}

.blog-filter .blog-search .search-group .btn-search::before, .blog-filter .blog-search .search-group .btn-search::after {
    display: none;
}

.blog-filter .blog-list-category {
    margin-top: 40px;
}

.blog-filter .blog-list-category .list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.blog-filter .blog-list-category .list-inner .item {
    margin: 0 20px 20px 20px;
}

.blog-filter .blog-list-category .list-inner .item a {
    display: block;
}

.blog-filter .blog-list-category .list-inner .item .image {
    width: 70px;
    height: 70px;
    margin: 0 auto;
    border-radius: 15px;
}

.blog-filter .blog-list-category .list-inner .item .image img {
    width: 100%;
    height: 100%;
    border-radius: 15px;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.blog-filter .blog-list-category .list-inner .item .text {
    font-size: 13px;
    font-weight: 500;
    color: #656667;
    text-align: center;
    margin-top: 10px;
}

.blog-filter .blog-list-category .list-inner .item:hover .image img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

.blog-filter .blog-list-category .list-inner .item:hover .text {
    color: #e4bd35;
}

.text img {
    width: 70% !important;
    height: auto !important;
}

.blogs-details-content .blog-img-container {

}

.ticket-date {
    font-size: 12px;
    text-align: left;
}

.ticket-date span {
    background-color: #760b9a;
    color: white;
    padding: 4px;
    border-radius: 25px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 10px;
}

.ticket-status {
    border-radius: 20px;
    font-size:12px;
    padding: 5px;
}

.ticket-status-0 {
    background-color: #e6e6e6;
}

.ticket-status-1 {
    background-color: #20b253;
    color:white !important;
}

.ticket-status-2 {
    background-color: #20a6b2;
    color:white !important;
}

.ticket-status-3 {
    background-color: #e08c2c;
    color:white !important;
}

.ticket-status-5 {
    background-color: #bfe02c;
}

.ticket-status-4 {
    background-color: #868686;
    color:white !important;
}

.help_button:hover {
    /* Start the shake animation and make the animation last for 0.5 seconds */
    animation: shake 0.5s;

    /* When the animation is finished, start again */
    animation-iteration-count: infinite;
}

.help_button {
    /* Start the shake animation and make the animation last for 0.5 seconds */
    animation: shake 0.5s;

    /* When the animation is finished, start again */
    animation-iteration-count: 1;
}

@keyframes shake {
    0% { transform: translate(1px, 1px) rotate(0deg); }
    10% { transform: translate(-1px, -2px) rotate(-1deg); }
    20% { transform: translate(-3px, 0px) rotate(1deg); }
    30% { transform: translate(3px, 2px) rotate(0deg); }
    40% { transform: translate(1px, -1px) rotate(1deg); }
    50% { transform: translate(-1px, 2px) rotate(-1deg); }
    60% { transform: translate(-3px, 1px) rotate(0deg); }
    70% { transform: translate(3px, 1px) rotate(-1deg); }
    80% { transform: translate(-1px, -1px) rotate(1deg); }
    90% { transform: translate(1px, 2px) rotate(0deg); }
    100% { transform: translate(1px, -2px) rotate(-1deg); }
}

.hr {
    display: block;
    width: 100%;
    margin-top: 16px;
    margin-bottom: 16px;
    background-color: rgba(106, 106, 106, 0.6) !important;
}

.side-filter .filter-inner {
    position: unset !important;
}

.card-class .card-inner .text li {
    font-size: 14px;
}

.card-class .card-inner .text label {
    font-size: 14px;
}

 :root{
     --radius: 14px;
     --bg: #0f172a;            /* پس‌زمینه */
     --me: #2fac66;            /* حباب سمت راست */
     --you: #750e98;           /* حباب سمت چپ */
     --text: #e5e7eb;          /* رنگ متن */
     --sub: #cbd5e1;           /* زمان */
     --shadow: 0 6px 18px rgba(0,0,0,.18);
 }

.chat{
    padding: 16px 12px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: 70vh;
    overflow-y: auto;
    scrollbar-width: thin;
}

/* ردیف پیام */
.message{
    display: flex;
    width: 100%;
}

/* ترازبندی */
.message.left  { justify-content: flex-start; }
.message.right { justify-content: flex-end; }

/* حباب پیام */
.bubble{
    position: relative;
    min-width: 120px;
    padding: 10px 12px 38px;
    max-width: 78%;
    line-height: 1.6;
    font-size: 12px;
    color: var(--text);
    box-shadow: var(--shadow);
    word-wrap: break-word;
    /*    white-space: pre-wrap;*/
}

/* رنگ و گوشه‌ها */
.message.left  .bubble{
    background: var(--you);
    border-radius: var(--radius) var(--radius) var(--radius) 6px;
}
.message.right .bubble{
    background: var(--me);
    color: white; /* کنتراست بهتر روی سبز */
    border-radius: var(--radius) var(--radius) 6px var(--radius);
}

/* دُم حباب */
.message.left  .bubble::after,
.message.right .bubble::after{
    content:"";
    position:absolute;
    bottom: 6px;
    width: 10px; height: 10px;
    transform: rotate(45deg);
}
.message.left .bubble::after{
    right: -1px;
    background: var(--you);
}
.message.right .bubble::after{
    left: -1px;
    background: var(--me);
}

/* زمان/متادیتا */
.meta{
    position: absolute;
    bottom: 4px;
    font-size: .72rem;
    color: #d6d6d6 !important;
    opacity: .8;
}
.message.left  .meta{ right: 8px; }
.message.right .meta{ left: 8px;  color: rgba(0,0,0,.6); }

@media (max-width:520px){
    .bubble{ max-width: 88%; }
}

html[dir="rtl"] .chat{ direction: rtl; }
html[dir="rtl"] .message.left  { justify-content: flex-start; }
html[dir="rtl"] .message.right { justify-content: flex-end; }

.chat{
    padding-bottom: 0;
}

.composer{
    position: sticky;
    left: 0; right: 0; bottom: 0;
    background-color: white;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    backdrop-filter: blur(10px);
    display: grid;
    grid-template-columns: 1fr auto;  /* فقط ورودی + ارسال */
    gap: 8px;
    align-items: end;
    border-top: 1px solid rgba(148,163,184,.2);
    z-index: 50;
}

.hide-scrollbar {
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

.composer-input{
    resize: none;
    max-height: 40vh;
    min-height: 40px;
    padding: 10px 12px;
    border-radius: 12px;
    border: 1px solid rgba(148,163,184,.25);
    outline: none;
    background: #e4e4e4;
    color: #000000;
    line-height: 1.5;
    text-align: right;
    direction: rtl;
}

.send-btn{
    appearance: none;
    border: 0;
    background: #22c55e;
    color: #ffffff;
    font-weight: 600;
    padding: 10px 14px;
    min-height: 40px;
    border-radius: 12px;
    cursor: pointer;
    transition: transform .06s ease, opacity .2s ease;
}
.send-btn:active{ transform: translateY(1px) }
.send-btn:hover{ opacity:.95 }

@media (max-width:520px){
    .composer{
        padding-left: 8px; padding-right: 8px;
        gap: 6px;
    }
}


html[dir="rtl"] .composer{ direction: rtl; }

.avatar-chat {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    overflow: hidden;
    flex: 0 0 36px;
    display: block;
    box-shadow: 0 2px 8px rgba(0,0,0,.25);
    border: 1px solid gray;
    background: #111;
    margin: 0 6px;
    margin-top: 33px;
}

.avatar-chat img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.avatar-chat[data-initial]:not([data-initial=""]) {
    display: grid;
    place-items: center;
    color: #e5e7eb;
    font-weight: 700;
    font-size: 12px;
}

.avatar[data-initial]:not([data-initial=""])::before{
    content: attr(data-initial);
}
