/* ChatJox 0.0.2 frontend design system. */
@font-face{font-family:"Vazirmatn";src:local("Vazirmatn"),local("Vazir");font-display:swap}
@font-face{font-family:"Estedad";src:local("Estedad");font-display:swap}
@font-face{font-family:"Shabnam";src:local("Shabnam");font-display:swap}

#chatjox-root,#chatjox-root *{box-sizing:border-box}
#chatjox-root{
    direction:rtl;
    position:relative;
    z-index:2147483000;
    font-family:var(--chatjox-font-family);
    font-size:var(--chatjox-base-font-size);
    font-weight:var(--chatjox-font-weight);
    line-height:var(--chatjox-line-height);
    color:var(--chatjox-text);
    text-rendering:optimizeLegibility;
    -webkit-font-smoothing:antialiased
}
#chatjox-root button,#chatjox-root input,#chatjox-root textarea,#chatjox-root select{font:inherit}
#chatjox-root button,#chatjox-root a{-webkit-tap-highlight-color:transparent}
#chatjox-root [hidden]{display:none!important}

/* Launcher */
#chatjox-root .chatjox-launcher-wrap{
    position:fixed;
    right:var(--chatjox-side);
    bottom:var(--chatjox-bottom);
    z-index:2147483002;
    width:max-content;
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:var(--chatjox-action-gap)
}
#chatjox-root.chatjox-pos-left .chatjox-launcher-wrap{right:auto;left:var(--chatjox-side);align-items:flex-start}
#chatjox-root.chatjox-pos-center .chatjox-launcher-wrap{right:auto;left:50%;transform:translateX(-50%);align-items:center}
#chatjox-root .chatjox-launcher{
    position:relative;
    min-width:var(--chatjox-launcher-size);
    height:var(--chatjox-launcher-size);
    padding:0 17px;
    border:var(--chatjox-launcher-border-width) solid var(--chatjox-launcher-border);
    outline:0;
    background:var(--chatjox-launcher-bg);
    color:var(--chatjox-launcher-icon);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    cursor:pointer;
    box-shadow:0 14px 34px rgba(15,23,42,.22);
    transition:background .18s ease,transform .18s ease,box-shadow .18s ease,opacity .18s ease,visibility .18s ease
}
#chatjox-root.chatjox-launcher-circle .chatjox-launcher{width:var(--chatjox-launcher-size);padding:0;border-radius:50%}
#chatjox-root.chatjox-launcher-rounded .chatjox-launcher{border-radius:18px}
#chatjox-root.chatjox-launcher-pill .chatjox-launcher{border-radius:999px}
#chatjox-root .chatjox-launcher:hover{background:var(--chatjox-launcher-hover);box-shadow:0 18px 42px rgba(15,23,42,.27)}
#chatjox-root.chatjox-launcher-no-shadow .chatjox-launcher,#chatjox-root.chatjox-launcher-no-shadow .chatjox-launcher:hover{box-shadow:none}
#chatjox-root .chatjox-launcher:focus-visible{outline:3px solid color-mix(in srgb,var(--chatjox-launcher-bg) 30%,#fff);outline-offset:3px}
#chatjox-root .chatjox-launcher.is-hidden{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px) scale(.9)}
#chatjox-root .chatjox-launcher-icon{
    width:var(--chatjox-launcher-icon-size);
    height:var(--chatjox-launcher-icon-size);
    flex:0 0 var(--chatjox-launcher-icon-size);
    display:flex;
    align-items:center;
    justify-content:center;
    font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif;
    font-size:calc(var(--chatjox-launcher-icon-size) * .82);
    line-height:1.15;
    overflow:visible
}
#chatjox-root .chatjox-launcher-icon img{width:100%;height:100%;display:block;object-fit:contain;border-radius:50%}
#chatjox-root .chatjox-launcher-text{font-size:13px;font-weight:800;white-space:nowrap;color:inherit}
#chatjox-root.chatjox-launcher-icon-only .chatjox-launcher-text{display:none}
#chatjox-root.chatjox-launcher-icon-only .chatjox-launcher{width:var(--chatjox-launcher-size);padding:0;border-radius:50%}
#chatjox-root .chatjox-launcher.is-menu-open .chatjox-launcher-icon{font-size:0}
#chatjox-root .chatjox-launcher.is-menu-open .chatjox-launcher-icon::before{content:"×";font-size:30px;line-height:1;color:currentColor;font-weight:300}
#chatjox-root .chatjox-launcher.is-menu-open .chatjox-launcher-text{display:none}
#chatjox-root .chatjox-unread{
    position:absolute;
    top:-5px;
    left:-5px;
    min-width:23px;
    height:23px;
    padding:0 5px;
    border-radius:999px;
    background:var(--chatjox-badge-bg);
    color:var(--chatjox-badge-text);
    border:2px solid var(--chatjox-surface);
    display:grid;
    place-items:center;
    font-size:10px;
    font-weight:800;
    line-height:1
}
#chatjox-root.chatjox-animation-scale .chatjox-launcher:not(.is-hidden):active{transform:scale(.95)}
#chatjox-root.chatjox-animation-slide .chatjox-launcher:hover{transform:translateY(-3px)}
#chatjox-root.chatjox-animation-bounce .chatjox-launcher:hover{animation:chatjox-bounce .55s ease}
#chatjox-root.chatjox-animation-pulse .chatjox-launcher{animation:chatjox-pulse 2.4s ease-in-out infinite}
#chatjox-root.chatjox-animation-fade .chatjox-launcher:hover{opacity:.86}
@keyframes chatjox-bounce{0%,100%{transform:translateY(0)}45%{transform:translateY(-5px)}70%{transform:translateY(-2px)}}
@keyframes chatjox-pulse{0%,100%{box-shadow:0 14px 34px rgba(15,23,42,.22)}50%{box-shadow:0 14px 34px rgba(15,23,42,.22),0 0 0 8px color-mix(in srgb,var(--chatjox-launcher-bg) 12%,transparent)}}

/* Action menu */
#chatjox-root .chatjox-action-menu{
    position:absolute;
    right:0;
    bottom:calc(100% + var(--chatjox-action-gap));
    width:max-content;
    max-width:min(340px,calc(100vw - 24px));
    display:flex;
    flex-direction:column-reverse;
    align-items:flex-end;
    gap:var(--chatjox-action-gap);
    padding:0;
    margin:0;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(10px) scale(.97);
    transform-origin:bottom right;
    transition:opacity .17s ease,transform .2s cubic-bezier(.2,.8,.2,1),visibility .17s ease
}
#chatjox-root.chatjox-pos-left .chatjox-action-menu{right:auto;left:0;align-items:flex-start;transform-origin:bottom left}
#chatjox-root.chatjox-pos-center .chatjox-action-menu{right:auto;left:50%;align-items:center;transform:translate(-50%,10px) scale(.97);transform-origin:bottom center}
#chatjox-root .chatjox-action-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1)}
#chatjox-root.chatjox-pos-center .chatjox-action-menu.is-open{transform:translate(-50%,0) scale(1)}
#chatjox-root.chatjox-menu-opens-down .chatjox-action-menu{bottom:auto;top:calc(100% + var(--chatjox-action-gap));flex-direction:column;transform-origin:top right;transform:translateY(-10px) scale(.97)}
#chatjox-root.chatjox-menu-opens-down.chatjox-pos-left .chatjox-action-menu{transform-origin:top left}
#chatjox-root.chatjox-menu-opens-down.chatjox-pos-center .chatjox-action-menu{transform-origin:top center;transform:translate(-50%,-10px) scale(.97)}
#chatjox-root.chatjox-menu-opens-down .chatjox-action-menu.is-open{transform:translateY(0) scale(1)}
#chatjox-root.chatjox-menu-opens-down.chatjox-pos-center .chatjox-action-menu.is-open{transform:translate(-50%,0) scale(1)}
#chatjox-root .chatjox-action-item{
    position:relative;
    min-height:var(--chatjox-action-size);
    border:1px solid var(--chatjox-action-border);
    outline:0;
    background:var(--chatjox-action-surface);
    color:var(--chatjox-action-text);
    text-decoration:none!important;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(15,23,42,.11);
    transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease;
    opacity:0
}
#chatjox-root .chatjox-action-menu.is-open .chatjox-action-item{opacity:1}
#chatjox-root .chatjox-action-item:hover,#chatjox-root .chatjox-action-item:focus-visible{background:var(--chatjox-action-hover);border-color:color-mix(in srgb,var(--chatjox-action-brand) 35%,var(--chatjox-action-border));transform:translateY(-1px);box-shadow:0 14px 30px rgba(15,23,42,.15)}
#chatjox-root .chatjox-action-item:focus-visible{outline:3px solid color-mix(in srgb,var(--chatjox-action-brand) 20%,transparent);outline-offset:2px}
#chatjox-root .chatjox-action-icon{
    width:calc(var(--chatjox-action-size) - 10px);
    height:calc(var(--chatjox-action-size) - 10px);
    flex:0 0 calc(var(--chatjox-action-size) - 10px);
    border-radius:calc(var(--chatjox-action-radius) - 4px);
    display:grid;
    place-items:center;
    background:color-mix(in srgb,var(--chatjox-action-brand) 12%,#fff);
    color:var(--chatjox-action-brand)
}
#chatjox-root .chatjox-action-icon svg{width:58%;height:58%;display:block}
#chatjox-root .chatjox-action-copy{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:right}
#chatjox-root .chatjox-action-copy strong{font-size:12px;line-height:1.45;color:var(--chatjox-action-text);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-action-copy small{font-size:10px;line-height:1.45;color:var(--chatjox-action-muted);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-action-tooltip{display:none}

/* Icon rail */
#chatjox-root.chatjox-menu-icons .chatjox-action-menu{width:var(--chatjox-action-size)}
#chatjox-root.chatjox-menu-icons .chatjox-action-item{
    width:var(--chatjox-action-size);
    height:var(--chatjox-action-size);
    min-width:var(--chatjox-action-size);
    max-width:var(--chatjox-action-size);
    padding:0;
    border-radius:50%;
    display:grid;
    place-items:center
}
#chatjox-root.chatjox-menu-icons .chatjox-action-icon{width:100%;height:100%;border-radius:50%;background:var(--chatjox-action-surface);box-shadow:none;color:var(--chatjox-action-brand)}
#chatjox-root.chatjox-menu-icons .chatjox-action-icon svg{width:52%;height:52%}
#chatjox-root.chatjox-menu-icons .chatjox-action-copy{display:none}
#chatjox-root.chatjox-menu-icons .chatjox-action-tooltip{
    position:absolute;
    right:calc(100% + 9px);
    top:50%;
    transform:translateY(-50%);
    display:block;
    max-width:190px;
    padding:7px 10px;
    border-radius:10px;
    background:var(--chatjox-action-surface);
    color:var(--chatjox-action-text);
    border:1px solid var(--chatjox-action-border);
    box-shadow:0 8px 22px rgba(15,23,42,.13);
    font-size:11px;
    font-weight:700;
    line-height:1.35;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .15s ease,visibility .15s ease
}
#chatjox-root.chatjox-menu-icons .chatjox-action-item:hover .chatjox-action-tooltip,#chatjox-root.chatjox-menu-icons .chatjox-action-item:focus-visible .chatjox-action-tooltip{opacity:1;visibility:visible}
#chatjox-root.chatjox-menu-icons.chatjox-pos-left .chatjox-action-tooltip{right:auto;left:calc(100% + 9px)}

/* Compact */
#chatjox-root.chatjox-menu-compact .chatjox-action-item{width:220px;max-width:min(78vw,220px);padding:6px 10px 6px 6px;border-radius:var(--chatjox-action-radius)}
#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only{width:var(--chatjox-action-size);max-width:var(--chatjox-action-size);padding:5px;border-radius:50%}
#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only .chatjox-action-copy{display:none}
#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only .chatjox-action-icon{width:100%;height:100%;flex-basis:100%;border-radius:50%}
#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only .chatjox-action-tooltip{display:block;position:absolute;right:calc(100% + 9px);top:50%;transform:translateY(-50%);padding:6px 9px;border-radius:9px;background:var(--chatjox-action-surface);border:1px solid var(--chatjox-action-border);box-shadow:0 8px 20px rgba(15,23,42,.12);color:var(--chatjox-action-text);font-size:10.5px;white-space:nowrap;opacity:0;visibility:hidden}
#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only:hover .chatjox-action-tooltip,#chatjox-root.chatjox-menu-compact .chatjox-action-item.is-icon-only:focus-visible .chatjox-action-tooltip{opacity:1;visibility:visible}
#chatjox-root.chatjox-menu-compact.chatjox-pos-left .chatjox-action-item.is-icon-only .chatjox-action-tooltip{right:auto;left:calc(100% + 9px)}

/* Cards */
#chatjox-root.chatjox-menu-cards .chatjox-action-item{width:280px;max-width:min(82vw,280px);padding:10px 12px;border-radius:var(--chatjox-action-radius)}
#chatjox-root.chatjox-menu-cards .chatjox-action-icon{width:48px;height:48px;flex-basis:48px;border-radius:14px}
#chatjox-root.chatjox-menu-cards .chatjox-action-copy strong{font-size:12.5px}
#chatjox-root.chatjox-menu-cards .chatjox-action-copy small{font-size:10.5px}

/* Chat panel */
#chatjox-root .chatjox-panel{
    position:fixed;
    right:var(--chatjox-side);
    bottom:calc(var(--chatjox-bottom) + var(--chatjox-launcher-size) + 14px);
    width:var(--chatjox-w);
    height:var(--chatjox-h);
    max-width:calc(100vw - 24px);
    max-height:calc(100dvh - 110px);
    background:var(--chatjox-surface);
    border:1px solid var(--chatjox-border);
    border-radius:var(--chatjox-radius);
    overflow:hidden;
    display:flex;
    flex-direction:column;
    box-shadow:var(--chatjox-panel-shadow);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(14px) scale(.985);
    transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility .18s ease;
    z-index:2147483001
}
#chatjox-root.chatjox-pos-left .chatjox-panel{right:auto;left:var(--chatjox-side)}
#chatjox-root.chatjox-pos-center .chatjox-panel{right:auto;left:50%;transform:translateX(-50%) translateY(14px) scale(.985)}
#chatjox-root .chatjox-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
#chatjox-root.chatjox-pos-center .chatjox-panel.is-open{transform:translateX(-50%)}

/* Header */
#chatjox-root .chatjox-header{
    min-height:76px;
    padding:12px 14px;
    background:var(--chatjox-header-bg);
    color:var(--chatjox-header-text);
    display:flex;
    align-items:center;
    gap:11px;
    flex:0 0 auto;
    border-bottom:1px solid color-mix(in srgb,var(--chatjox-header-text) 12%,transparent)
}
#chatjox-root .chatjox-avatar{
    width:44px;
    height:44px;
    flex:0 0 44px;
    border-radius:15px;
    background:color-mix(in srgb,var(--chatjox-header-text) 18%,transparent);
    border:1px solid color-mix(in srgb,var(--chatjox-header-text) 22%,transparent);
    display:grid;
    place-items:center;
    font-size:22px;
    overflow:hidden
}
#chatjox-root .chatjox-avatar img{width:100%;height:100%;object-fit:cover;display:block}
#chatjox-root .chatjox-head-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
#chatjox-root .chatjox-head-copy strong{font-size:var(--chatjox-title-font-size);font-weight:800;line-height:1.35;color:var(--chatjox-header-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-head-copy small{display:flex;align-items:center;gap:7px;min-width:0;font-size:var(--chatjox-status-font-size);font-weight:500;line-height:1.4;color:var(--chatjox-header-subtitle)}
#chatjox-root .chatjox-status-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-dot{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:var(--chatjox-offline);box-shadow:0 0 0 4px color-mix(in srgb,var(--chatjox-offline) 18%,transparent)}
#chatjox-root .chatjox-dot.is-online{background:var(--chatjox-online);box-shadow:0 0 0 4px color-mix(in srgb,var(--chatjox-online) 18%,transparent)}
#chatjox-root .chatjox-close{width:38px;height:38px;flex:0 0 38px;border:0;border-radius:12px;background:color-mix(in srgb,var(--chatjox-header-text) 12%,transparent);color:var(--chatjox-header-text);display:grid;place-items:center;cursor:pointer;transition:background .15s ease,transform .15s ease}
#chatjox-root .chatjox-close:hover{background:color-mix(in srgb,var(--chatjox-header-text) 20%,transparent)}
#chatjox-root .chatjox-close:active{transform:scale(.94)}
#chatjox-root .chatjox-close:focus-visible{outline:3px solid color-mix(in srgb,var(--chatjox-header-text) 28%,transparent);outline-offset:2px}
#chatjox-root .chatjox-close svg{width:20px;height:20px;display:block}

/* Messages */
#chatjox-root .chatjox-body{
    position:relative;
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:18px 14px 20px;
    background:var(--chatjox-body-bg);
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:color-mix(in srgb,var(--chatjox-muted) 30%,transparent) transparent
}
#chatjox-root .chatjox-body::-webkit-scrollbar{width:5px}
#chatjox-root .chatjox-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--chatjox-muted) 28%,transparent);border-radius:999px}
#chatjox-root .chatjox-welcome{display:flex;justify-content:flex-start;direction:ltr;margin-bottom:14px}
#chatjox-root .chatjox-welcome .chatjox-bubble{max-width:90%;direction:rtl;text-align:right}
#chatjox-root .chatjox-messages{display:flex;flex-direction:column;gap:11px;position:relative;z-index:1}
#chatjox-root .chatjox-msg{display:flex;flex-direction:column;max-width:82%}
#chatjox-root .chatjox-msg.visitor{align-self:flex-start;align-items:flex-start}
#chatjox-root .chatjox-msg.operator{align-self:flex-end;align-items:flex-end}
#chatjox-root .chatjox-bubble{
    padding:10px 13px;
    border-radius:var(--chatjox-bubble-radius);
    font-size:var(--chatjox-message-font-size);
    font-weight:var(--chatjox-font-weight);
    line-height:var(--chatjox-line-height);
    word-break:break-word;
    overflow-wrap:anywhere
}
#chatjox-root .chatjox-msg.visitor .chatjox-bubble{background:var(--chatjox-visitor-bg);color:var(--chatjox-visitor-text);border:1px solid var(--chatjox-visitor-border);border-bottom-right-radius:5px;box-shadow:0 5px 16px rgba(15,23,42,.07)}
#chatjox-root .chatjox-msg.operator .chatjox-bubble{background:var(--chatjox-operator-bg);color:var(--chatjox-operator-text);border:1px solid var(--chatjox-operator-border);border-bottom-left-radius:5px;box-shadow:0 5px 16px rgba(15,23,42,.05)}
#chatjox-root .chatjox-bubble.system{background:var(--chatjox-operator-bg);color:var(--chatjox-operator-text);border:1px solid var(--chatjox-operator-border);box-shadow:0 5px 16px rgba(15,23,42,.05)}
#chatjox-root .chatjox-msg time{font-size:10px;line-height:1.3;color:var(--chatjox-muted);margin-top:4px;padding:0 4px;direction:rtl}
#chatjox-root .chatjox-text-link{color:var(--chatjox-operator-link)!important;text-decoration:underline!important;text-decoration-thickness:1.5px;text-underline-offset:2px;font-weight:700;word-break:break-all;overflow-wrap:anywhere;cursor:pointer}
#chatjox-root .chatjox-msg.visitor .chatjox-text-link{color:var(--chatjox-visitor-link)!important}
#chatjox-root .chatjox-file-link{display:inline-flex;align-items:center;gap:7px;color:inherit!important;text-decoration:none!important;font-weight:700}
#chatjox-root .chatjox-file-link::before{content:"📎";font-size:14px}

/* Quick replies */
#chatjox-root .chatjox-quick{position:relative;z-index:1;margin:8px 0 15px;padding:13px;border-radius:18px;background:var(--chatjox-quick-bg);border:1px solid var(--chatjox-border);box-shadow:0 7px 20px rgba(15,23,42,.05)}
#chatjox-root .chatjox-quick-title{display:block;text-align:right;font-size:12.5px;font-weight:800;color:var(--chatjox-text);margin-bottom:9px}
#chatjox-root .chatjox-quick-list{display:flex;flex-wrap:wrap;gap:7px}
#chatjox-root .chatjox-quick-btn{min-height:38px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--chatjox-quick-button-text) 16%,var(--chatjox-border));border-radius:11px;background:var(--chatjox-quick-button-bg);color:var(--chatjox-quick-button-text);font-size:11.5px;font-weight:700;line-height:1.5;cursor:pointer;transition:filter .15s ease,transform .12s ease,border-color .15s ease}
#chatjox-root .chatjox-quick-btn:hover{filter:brightness(.98);border-color:color-mix(in srgb,var(--chatjox-quick-button-text) 35%,var(--chatjox-border))}
#chatjox-root .chatjox-quick-btn:active{transform:scale(.985)}
#chatjox-root .chatjox-quick-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--chatjox-primary) 15%,transparent);outline-offset:2px}

/* Profile */
#chatjox-root .chatjox-profile{position:absolute;inset:76px 0 0;background:color-mix(in srgb,var(--chatjox-body-bg) 94%,transparent);backdrop-filter:blur(5px);z-index:7;padding:18px;display:grid;place-items:center;overflow:auto}
#chatjox-root .chatjox-profile-card{width:100%;max-width:340px;background:var(--chatjox-surface);border:1px solid var(--chatjox-border);border-radius:20px;padding:20px;box-shadow:0 18px 48px rgba(15,23,42,.12)}
#chatjox-root .chatjox-profile-card strong{display:block;font-size:16px;font-weight:800;color:var(--chatjox-text);margin-bottom:4px}
#chatjox-root .chatjox-profile-card p{font-size:12px;color:var(--chatjox-muted);margin:5px 0 14px;line-height:1.7}
#chatjox-root .chatjox-profile-card input{width:100%;height:44px;border:1px solid var(--chatjox-border);border-radius:12px;padding:0 12px;margin:0 0 9px;outline:0;background:var(--chatjox-input-bg);color:var(--chatjox-input-text);transition:border-color .15s ease,box-shadow .15s ease;text-align:right;direction:rtl}
#chatjox-root .chatjox-profile-card input:focus{border-color:var(--chatjox-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--chatjox-primary) 12%,transparent)}
#chatjox-root .chatjox-profile-card .chatjox-phone{direction:rtl;text-align:right}
#chatjox-root .chatjox-profile-card .chatjox-phone::placeholder{text-align:right}
#chatjox-root .chatjox-start{width:100%;height:44px;border:0;border-radius:12px;background:var(--chatjox-primary);color:#fff;font-weight:800;cursor:pointer;transition:filter .15s ease,transform .12s ease}
#chatjox-root .chatjox-start:hover{filter:brightness(.96)}
#chatjox-root .chatjox-start:active{transform:scale(.99)}

/* Composer */
#chatjox-root .chatjox-composer{flex:0 0 auto;background:var(--chatjox-composer-bg);border-top:1px solid var(--chatjox-border);padding:10px 11px 8px;position:relative;z-index:5}
#chatjox-root .chatjox-compose-row{display:flex;align-items:flex-end;gap:7px;direction:rtl}
#chatjox-root .chatjox-input{flex:1;min-width:0;height:44px;min-height:44px;max-height:104px;resize:none;border:1px solid var(--chatjox-border);border-radius:var(--chatjox-input-radius);padding:10px 12px;font-size:var(--chatjox-message-font-size);font-weight:var(--chatjox-font-weight);line-height:1.65;outline:0;background:var(--chatjox-input-bg);color:var(--chatjox-input-text);overflow-y:auto;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
#chatjox-root .chatjox-input::placeholder{color:var(--chatjox-placeholder)}
#chatjox-root .chatjox-input:focus{border-color:color-mix(in srgb,var(--chatjox-primary) 62%,var(--chatjox-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--chatjox-primary) 10%,transparent);background:var(--chatjox-surface)}
#chatjox-root .chatjox-icon-btn{width:44px;height:44px;flex:0 0 44px;border:0;border-radius:13px;display:grid;place-items:center;cursor:pointer;transition:transform .12s ease,filter .15s ease,background .15s ease}
#chatjox-root .chatjox-icon-btn:active{transform:scale(.94)}
#chatjox-root .chatjox-icon-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--chatjox-primary) 14%,transparent);outline-offset:2px}
#chatjox-root .chatjox-send{background:var(--chatjox-send-bg);color:var(--chatjox-send-icon);box-shadow:0 7px 18px color-mix(in srgb,var(--chatjox-send-bg) 24%,transparent)}
#chatjox-root .chatjox-send:hover{filter:brightness(.96)}
#chatjox-root .chatjox-file-btn{background:var(--chatjox-attach-bg);color:var(--chatjox-attach-icon)}
#chatjox-root .chatjox-file-btn:hover{filter:brightness(.98)}
#chatjox-root .chatjox-send svg,#chatjox-root .chatjox-file-btn svg{width:21px;height:21px;display:block}
#chatjox-root .chatjox-send svg{transform:none}
#chatjox-root .chatjox-footer-note{text-align:center;color:var(--chatjox-muted);font-size:9px;line-height:1.4;margin-top:5px;min-height:13px}
#chatjox-root .chatjox-upload-preview{display:flex;align-items:center;gap:7px;width:fit-content;max-width:100%;font-size:10.5px;padding:6px 9px;margin:0 0 7px;border:1px solid var(--chatjox-border);border-radius:10px;background:var(--chatjox-input-bg);color:var(--chatjox-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-toast{position:absolute;bottom:78px;left:12px;right:12px;background:var(--chatjox-text);color:var(--chatjox-surface);padding:9px 12px;border-radius:11px;font-size:11px;text-align:center;z-index:10;box-shadow:0 10px 30px rgba(15,23,42,.22);transition:opacity .18s ease}
html.chatjox-chat-lock,body.chatjox-chat-lock{overflow:hidden!important;overscroll-behavior:none!important}

/* Mobile */
@media(max-width:600px){
    #chatjox-root .chatjox-launcher-wrap{right:var(--chatjox-mobile-side);bottom:var(--chatjox-mobile-bottom)}
    #chatjox-root.chatjox-pos-left .chatjox-launcher-wrap{right:auto;left:var(--chatjox-mobile-side)}
    #chatjox-root.chatjox-pos-center .chatjox-launcher-wrap{right:auto;left:50%}
    #chatjox-root .chatjox-launcher{height:var(--chatjox-mobile-launcher-size);min-width:var(--chatjox-mobile-launcher-size)}
    #chatjox-root.chatjox-mobile-icon-only .chatjox-launcher,#chatjox-root.chatjox-launcher-icon-only .chatjox-launcher{width:var(--chatjox-mobile-launcher-size);padding:0;border-radius:50%}
    #chatjox-root.chatjox-mobile-icon-only .chatjox-launcher-text{display:none}
    #chatjox-root .chatjox-action-item{min-height:var(--chatjox-mobile-action-size)}
    #chatjox-root .chatjox-action-icon{width:calc(var(--chatjox-mobile-action-size) - 8px);height:calc(var(--chatjox-mobile-action-size) - 8px);flex-basis:calc(var(--chatjox-mobile-action-size) - 8px)}
    #chatjox-root.chatjox-menu-icons .chatjox-action-menu{width:var(--chatjox-mobile-action-size)}
    #chatjox-root.chatjox-menu-icons .chatjox-action-item{width:var(--chatjox-mobile-action-size);height:var(--chatjox-mobile-action-size);min-width:var(--chatjox-mobile-action-size);max-width:var(--chatjox-mobile-action-size)}
    #chatjox-root.chatjox-menu-compact .chatjox-action-item{width:198px;max-width:min(76vw,198px)}
    #chatjox-root.chatjox-menu-cards .chatjox-action-item{width:250px;max-width:min(82vw,250px)}
    #chatjox-root .chatjox-action-copy small{font-size:9.5px}
    #chatjox-root .chatjox-panel{right:10px;bottom:10px;width:var(--chatjox-mw);height:var(--chatjox-mh);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:min(var(--chatjox-radius),22px)}
    #chatjox-root.chatjox-pos-left:not(.chatjox-mobile-fullscreen) .chatjox-panel{right:auto;left:10px}
    #chatjox-root.chatjox-pos-center:not(.chatjox-mobile-fullscreen) .chatjox-panel{right:auto;left:50%;transform:translateX(-50%) translateY(14px) scale(.985)}
    #chatjox-root.chatjox-pos-center:not(.chatjox-mobile-fullscreen) .chatjox-panel.is-open{transform:translateX(-50%)}
    #chatjox-root.chatjox-mobile-fullscreen .chatjox-panel{top:var(--chatjox-app-top,0px)!important;right:0!important;bottom:auto!important;left:0!important;width:100%!important;height:var(--chatjox-app-height,100dvh)!important;min-height:0!important;max-width:none!important;max-height:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:translateY(14px)}
    #chatjox-root.chatjox-mobile-fullscreen .chatjox-panel.is-open{transform:none}
    #chatjox-root .chatjox-header{min-height:70px;padding:10px 12px}
    #chatjox-root.chatjox-mobile-fullscreen .chatjox-header{padding-top:max(10px,env(safe-area-inset-top));min-height:calc(70px + env(safe-area-inset-top));align-items:flex-end;padding-bottom:10px}
    #chatjox-root .chatjox-avatar{width:42px;height:42px;flex-basis:42px;border-radius:14px}
    #chatjox-root .chatjox-body{padding:14px 11px 18px}
    #chatjox-root .chatjox-msg{max-width:88%}
    #chatjox-root .chatjox-bubble{padding:9px 11px}
    #chatjox-root .chatjox-quick{padding:12px;border-radius:16px}
    #chatjox-root .chatjox-quick-list{display:grid;grid-template-columns:1fr;gap:6px}
    #chatjox-root .chatjox-quick-btn{width:100%;text-align:center}
    #chatjox-root .chatjox-profile{inset:70px 0 0;padding:16px}
    #chatjox-root.chatjox-mobile-fullscreen .chatjox-profile{top:calc(70px + env(safe-area-inset-top))}
    #chatjox-root .chatjox-composer{padding:8px 9px max(8px,env(safe-area-inset-bottom))}
    #chatjox-root .chatjox-compose-row{gap:5px}
    #chatjox-root .chatjox-input{height:44px;min-height:44px;max-height:92px;padding:10px;font-size:14px}
    #chatjox-root .chatjox-icon-btn{width:43px;height:43px;flex-basis:43px}
    #chatjox-root .chatjox-footer-note{display:none}
    #chatjox-root .chatjox-toast{bottom:66px}
    #chatjox-root.chatjox-ios .chatjox-input,#chatjox-root.chatjox-ios .chatjox-profile-card input{font-size:16px!important;-webkit-appearance:none;appearance:none}
    #chatjox-root.chatjox-ios .chatjox-body{flex:1 1 auto;min-height:0}
    #chatjox-root.chatjox-ios .chatjox-composer{flex:0 0 auto;padding-bottom:max(9px,env(safe-area-inset-bottom))}
}

@media(max-width:360px){
    #chatjox-root:not(.chatjox-mobile-fullscreen) .chatjox-panel{right:5px;bottom:5px;width:calc(100vw - 10px);height:min(var(--chatjox-mh),calc(100dvh - 10px));max-width:calc(100vw - 10px);max-height:calc(100dvh - 10px)}
    #chatjox-root .chatjox-header{padding-inline:10px}
    #chatjox-root .chatjox-body{padding-inline:9px}
}

@media(prefers-reduced-motion:reduce){
    #chatjox-root *,#chatjox-root *::before,#chatjox-root *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* Per-channel icon-only mode works in every action-menu layout. */
#chatjox-root .chatjox-action-item.is-icon-only .chatjox-action-copy{display:none}
#chatjox-root.chatjox-menu-cards .chatjox-action-item.is-icon-only{width:var(--chatjox-action-size);min-width:var(--chatjox-action-size);max-width:var(--chatjox-action-size);height:var(--chatjox-action-size);min-height:var(--chatjox-action-size);padding:5px;border-radius:50%}
#chatjox-root.chatjox-menu-cards .chatjox-action-item.is-icon-only .chatjox-action-icon{width:100%;height:100%;flex-basis:100%;border-radius:50%}
#chatjox-root.chatjox-menu-cards .chatjox-action-item.is-icon-only .chatjox-action-tooltip{display:block;position:absolute;right:calc(100% + 9px);top:50%;transform:translateY(-50%);padding:6px 9px;border-radius:9px;background:var(--chatjox-action-surface);border:1px solid var(--chatjox-action-border);box-shadow:0 8px 20px rgba(15,23,42,.12);color:var(--chatjox-action-text);font-size:10.5px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease}
#chatjox-root.chatjox-menu-cards .chatjox-action-item.is-icon-only:hover .chatjox-action-tooltip,#chatjox-root.chatjox-menu-cards .chatjox-action-item.is-icon-only:focus-visible .chatjox-action-tooltip{opacity:1;visibility:visible}
#chatjox-root.chatjox-menu-cards.chatjox-pos-left .chatjox-action-item.is-icon-only .chatjox-action-tooltip{right:auto;left:calc(100% + 9px)}

/* ChatJox 0.0.5 optional advanced modules. These selectors are inert when the related UI is not rendered. */
#chatjox-root .chatjox-assigned-operator{display:block;margin-top:2px;font-size:9.5px;opacity:.86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chatjox-root .chatjox-typing-state{align-self:flex-start;margin:4px 2px 2px;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,var(--chatjox-primary) 8%,var(--chatjox-surface));color:var(--chatjox-muted);font-size:9.5px}
#chatjox-root .chatjox-consultation-banner{margin:7px 0 0;padding:7px 9px;border-radius:11px;border:1px solid color-mix(in srgb,var(--chatjox-primary) 18%,var(--chatjox-border));background:color-mix(in srgb,var(--chatjox-primary) 7%,var(--chatjox-surface));color:var(--chatjox-text);font-size:10px;text-align:center}
#chatjox-root .chatjox-consultation-banner.is-ended{border-color:#fecaca;background:#fef2f2;color:#991b1b}
#chatjox-root .chatjox-msg-foot{display:flex;align-items:center;gap:6px;min-height:15px}
#chatjox-root .chatjox-msg.visitor .chatjox-msg-foot{justify-content:flex-start}
#chatjox-root .chatjox-msg.operator .chatjox-msg-foot{justify-content:flex-end}
#chatjox-root .chatjox-delivery-state{font-size:8.5px;color:var(--chatjox-muted);white-space:nowrap}
#chatjox-root .chatjox-delivery-state.is-seen{color:var(--chatjox-primary);font-weight:700}

@keyframes chatjox-record-pulse{0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.25)}50%{box-shadow:0 0 0 7px rgba(220,38,38,0)}}
@media(max-width:600px){}
#chatjox-root .chatjox-profile-card .chatjox-department{width:100%;height:44px;border:1px solid var(--chatjox-border);border-radius:12px;padding:0 12px;margin:0 0 9px;outline:0;background:var(--chatjox-input-bg);color:var(--chatjox-input-text);font:inherit;text-align:right;direction:rtl}
#chatjox-root .chatjox-profile-card .chatjox-department:focus{border-color:var(--chatjox-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--chatjox-primary) 12%,transparent)}
@media(max-width:600px){#chatjox-root.chatjox-ios .chatjox-profile-card .chatjox-department{font-size:16px!important}}

#chatjox-root .chatjox-message-operator{display:block;margin:0 4px 3px;font-size:10px;color:var(--chatjox-muted,#667085);line-height:1.4}
#chatjox-root .chatjox-msg.operator .chatjox-message-operator{text-align:left}

/* Preserve full Persian/percent-encoded product URLs inside chat bubbles. */
#chatjox-root .chatjox-text-link{overflow-wrap:anywhere!important;word-break:break-word!important;white-space:normal!important;max-width:100%;unicode-bidi:plaintext}
@media(max-width:600px){
}
@media(prefers-reduced-motion:reduce){
}

/* 0.0.6 targeted interaction fixes: native file links. */
#chatjox-root .chatjox-file-bubble{max-width:100%}
#chatjox-root .chatjox-file-link{
    position:relative;
    z-index:2;
    display:inline-flex;
    align-items:center;
    gap:7px;
    max-width:100%;
    min-height:32px;
    pointer-events:auto!important;
    touch-action:manipulation;
    text-decoration:underline!important;
    text-decoration-thickness:1.25px!important;
    text-underline-offset:3px;
    cursor:pointer;
    -webkit-tap-highlight-color:rgba(0,0,0,.08)
}
#chatjox-root .chatjox-file-link-name{min-width:0;overflow-wrap:anywhere;word-break:break-word}
@media(max-width:600px){
    #chatjox-root .chatjox-file-link{min-height:40px;padding-block:3px}
}

/* ChatJox 0.0.6 — canonical mobile composer interactions.
   The real file input is the hit target. No label-generated click and no
   JavaScript .click()/showPicker() are used. */
#chatjox-root .chatjox-file-btn{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    pointer-events:auto!important;
    touch-action:manipulation;
    cursor:pointer;
}
#chatjox-root .chatjox-file-btn > svg{
    position:relative;
    z-index:1;
    pointer-events:none!important;
}
#chatjox-root .chatjox-file-btn .chatjox-file{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    opacity:0!important;
    clip:auto!important;
    clip-path:none!important;
    overflow:visible!important;
    pointer-events:auto!important;
    touch-action:manipulation;
    cursor:pointer;
    z-index:5!important;
}
@media(max-width:600px){
    #chatjox-root .chatjox-file-btn:active{
        transform:none!important;
    }
}

/* Mobile upload hit-area correction */
#chatjox-root .chatjox-file-btn{
    min-width:42px!important;
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:relative!important;
}
#chatjox-root .chatjox-file-btn .chatjox-file{
    z-index:20!important;
    transform:none!important;
}
#chatjox-root .chatjox-file-btn::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
}

/* ChatJox mobile upload full touch area fix */
#chatjox-root .chatjox-file-btn{
    position:relative;
    overflow:hidden;
    touch-action:manipulation;
    -webkit-user-select:none;
    user-select:none;
}
#chatjox-root .chatjox-file-btn .chatjox-file,
#chatjox-root .chatjox-file-btn input[type="file"]{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    opacity:0!important;
    cursor:pointer!important;
    z-index:5!important;
}
#chatjox-root .chatjox-file-btn svg{
    position:relative;
    z-index:1;
    pointer-events:none;
}

/* ChatJox Mobile Upload Real Full Touch Fix */
#chatjox-root .chatjox-file-btn{
    position:relative;
    overflow:hidden;
}
#chatjox-root .chatjox-file-btn input.chatjox-file{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    opacity:0;
    cursor:pointer;
    z-index:10;
    display:block;
}
#chatjox-root .chatjox-file-btn svg{
    pointer-events:none;
    position:relative;
    z-index:1;
}

/* Definitive mobile upload full button hit area fix */
#chatjox-root .chatjox-file-btn{position:relative!important;overflow:hidden!important;isolation:isolate!important;pointer-events:auto!important;}
#chatjox-root .chatjox-file-btn input.chatjox-file{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;z-index:999!important;cursor:pointer!important;display:block!important;}
#chatjox-root .chatjox-file-btn svg{position:relative!important;z-index:1!important;pointer-events:none!important;}

/* ChatJox Mobile upload button slight size adjustment */
#chatjox-root .chatjox-file-btn{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    flex:0 0 50px!important;
}
#chatjox-root .chatjox-file-btn input.chatjox-file,
#chatjox-root .chatjox-file-btn input[type="file"]{
    width:100%!important;
    height:100%!important;
}

/* ChatJox Android/mobile composer native-control strip fix.
   Keep the textarea behavior intact while removing the native WebKit
   control/scrollbar/resizer paint that can appear as a dark strip in
   Chrome on Android. This is visual-only and does not touch chat logic. */
@media (max-width:600px){
    #chatjox-root .chatjox-input{
        -webkit-appearance:none!important;
        appearance:none!important;
        background-image:none!important;
        scrollbar-width:none!important;
        -ms-overflow-style:none!important;
        border-left-width:1px!important;
        border-right-width:1px!important;
        background-clip:padding-box!important;
    }
    #chatjox-root .chatjox-input::-webkit-scrollbar,
    #chatjox-root .chatjox-input::-webkit-scrollbar-track,
    #chatjox-root .chatjox-input::-webkit-scrollbar-thumb,
    #chatjox-root .chatjox-input::-webkit-scrollbar-corner,
    #chatjox-root .chatjox-input::-webkit-resizer{
        width:0!important;
        height:0!important;
        display:none!important;
        -webkit-appearance:none!important;
        background:transparent!important;
        border:0!important;
        box-shadow:none!important;
    }
}

/* ChatJox 0.0.6 attachment control r2
   A single real file input owns the full 50px hit-area. No label/default
   activation and no synthetic JS click are used. */
#chatjox-root .chatjox-attach-control{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    min-height:50px!important;
    flex:0 0 50px!important;
    position:relative!important;
    overflow:hidden!important;
    isolation:isolate!important;
    background:var(--chatjox-attach-bg)!important;
    color:var(--chatjox-attach-icon)!important;
    touch-action:manipulation;
    -webkit-user-select:none;
    user-select:none;
}
#chatjox-root .chatjox-attach-control:hover{filter:brightness(.98)}
#chatjox-root .chatjox-attach-control svg{
    width:21px;
    height:21px;
    display:block;
    position:relative;
    z-index:1;
    pointer-events:none!important;
}
#chatjox-root .chatjox-attach-control .chatjox-attach-input{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-width:100%!important;
    min-height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    opacity:0!important;
    z-index:20!important;
    display:block!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
}
@media(max-width:600px){
    #chatjox-root .chatjox-attach-control:active{transform:none!important}
}
