﻿.PrjHead {
}

.PrjHead {
    & .DedCustoms {
        vertical-align: middle;
        width: 100%;
        margin: 0 auto;
        overflow-x: hidden;
        overflow-y: hidden;
        white-space: nowrap;
        padding: 1px 0 12px;
        user-select: none;
        direction: rtl;
        -webkit-user-drag: none;

        & .DedUserDiv {
            vertical-align: middle;
            height: 34px;
            line-height: 34px;
            padding: 0 34px 0 5px;

            &:hover {
                background: var(--ColorLt);
            }

            & img {
                border-radius: 8px;
                display: inline-block;
                background: var(--ColorLt);
                cursor: pointer;
                width: 28px;
                height: 28px;
                position: absolute;
                right: 3px;
                top: 3px;
            }

            & .Names {
                font-size: 8px;
                display: inline-block;
                vertical-align: top;
                line-height: inherit;
                padding: 0 4px;
            }

            & .LProj {
                font-size: 7px;
                padding: 0 5px;
                opacity: 0.7;
                line-height: inherit;
                display: inline-block;
                vertical-align: top;
            }
        }
    }
}


    .PrjHead .SaerchBoard {
        overflow: unset;
    }

        .PrjHead .SaerchBoard:not(:has(input:placeholder-shown)) {
            background: var(--NaviNew) !important;
        }

    .PrjHead .CusList {
        padding: 8px 8px;
        margin: 1px 0px;
        overflow: hidden;
        max-height: 90vh;
        min-height: 70px;
        white-space: normal;
        position: absolute;
        z-index: 6;
        left: 12px;
        border-radius: calc(var(--CrsBorder) + 0px);
        /* box-shadow: var(--CrsFadeShadow), var(--CrsFadeShadow); */
        /* background: var(--TransPr); */
        /* backdrop-filter: blur(7px); */
        width: calc(100% - 24px);
        background: var(--NaviNew);
    }

        .PrjHead .CusList span {
            min-width: unset;
        }

        .PrjHead .CusList:empty {
            border: none;
            opacity: 0;
            pointer-events: none;
            margin-top: -20px;
        }

    .PrjHead .SaerchBoard.Loading .CloseSearch:before {
        content: "\f013";
        animation: D360 1.5s infinite linear;
    }

    .PrjHead .xCrs {
        box-shadow: unset;
        margin: 1px 1px;
        background: var(--ColorVl);
        height: 56px;
    }

        .PrjHead .xCrs > * {
            border: none;
        }

.ScrollMojriBox {
    vertical-align: middle;
    padding: 15px 5px 12px;

    & .UserDiv {
        vertical-align: middle;
        margin: 0 1px;

        &[ScLvl="3"] {
            margin: 0 2px;
        }

        &.Hide {
            max-width: 0 !important;
            margin: 0;
            overflow: hidden;
            pointer-events: none;
            min-width: 0 !important;
        }

        &.SelectedMoj {
            margin: 0 5px !important;

            & img {
                transform: unset;
                animation: RoundAnim 2s cubic-bezier(0.8, -0.6, 0.2, 1.4) forwards 1;
            }
        }
    }

    & > :Not([ScLvl="1"]):Not([ScLvl="3"]):Not(.ShiftEyd) {
        max-width: 40px;
        height: 40px;
        min-width: 40px;
        line-height: 40px;
        /* margin: 0 1px; */
    }

    & > :Not([ScLvl="1"]):Not([ScLvl="3"]) img {
        filter: grayscale(0.7) opacity(0.8);
    }

    & > :Not([ScLvl="1"]):Not([ScLvl="3"]):Not(.Hide) + [ScLvl="3"] {
        margin-right: 10px;
    }
}
.MojriInfoIcons {
    position: relative;
    right: 0px;
    bottom: 0px;
    margin: 12px 3px;
    width: calc(100% - 6px);
    display: flex;
}

/* CSS Nesting */
.MojriInfoCheck {
    & .Items {
        position: relative;
        border-radius: var(--CrsBorder);
        margin: var(--CrsMargin);
        background: linear-gradient(30deg, var(--ColorLt) 10%, var(--WtColor) 50%, var(--ColorLt) 90%) center;
        cursor: pointer;
        box-shadow: unset;
        line-height: 52px;
        height: 55px;
        overflow: hidden;
        background-size: 220%;

        &:before {
            font-size: 20px;
            line-height: inherit;
            right: 8px;
            width: 40px;
            position: absolute;
            transition: 0.4s;
            font-family: "Font Awesome 6 Pro";
            font-weight: 900;
        }

        &:hover {
            background-size: 140% !important;
            z-index: 1;
            transition: 0.6s;

            & h5 {
                right: 40px;
            }

            & span.Price {
                left: 105px;
            }

            & .Info {
                right: 120px;
                opacity: 1;
                /*bottom: 2px;*/
            }

            &:before {
                transform: scale(1.5) rotate(-15deg);
                filter: opacity(0.2);
            }
        }

        & h5 {
            font-size: 10.5px;
            font-weight: 900;
            line-height: inherit;
            right: 60px;
            position: absolute;
            transition: 0.6s;
            margin: 0;
            direction: rtl;
            white-space: pre;
        }

        & .Info {
            position: absolute;
            right: 85px;
            font-size: 8.5px;
            opacity: 0.85;
            bottom: 3px;
            line-height: 14px;
            transition: 0.6s;
            white-space: pre;
        }

        &.TikNot {
            color: var(--OrangeBs);
        }

        &.UnCalc {
            color: #b3b3b3;
            background-image: linear-gradient(-45deg, transparent 40%, #81818159 50%, transparent 60%);
            background-size: 10px 10px !important;
            box-shadow: inset 0 0 10px -4px;

            & span,
            & h5 {
                /*text-decoration: line-through;*/
            }
        }

        &:has(.Gls) {
            height: 90px;
        }

        & .Gls {
            width: 60%;
            position: absolute;
            left: 20%;
            height: 4px;
            bottom: 27px;
            box-shadow: inset 0 0 2px;
            display: inline-flex;
            justify-content: space-between;
            border-radius: 2px;

            &:before {
            }

            & .Gl {
                position: relative;
                width: 26px;
                text-align: center;
                height: 31px;
                margin-top: -7px;
                color: var(--OrangeBs);
                opacity: 0.9;

                &:before {
                    font-family: "Font Awesome 6 Pro";
                    content: "\f057";
                    margin-top: 0;
                    font-size: 13px;
                    position: absolute;
                    top: 0;
                    width: 100%;
                    left: 0;
                    line-height: 20px;
                    text-shadow: 0 0 2px var(--WtColor), 0 0 3px var(--WtColor);
                }

                &:after {
                    content: attr(goal);
                    font-size: 8.5px;
                    line-height: 12px;
                    width: 100%;
                    position: absolute;
                    bottom: 0;
                    right: 0;
                }

                &.Pass {
                    /*color: var(--GreenBs);*/
                    color: var(--ColorBs);
                    opacity: 1;

                    &:before {
                        content: "\f2f7";
                        font-size: 15px;
                    }

                    &:after {
                    }
                }
            }
        }
    }

    & span {
        font-size: 13px;
        top: 0;
        line-height: inherit;
        left: 15px;
        position: absolute;
        direction: ltr;
        color: unset;
        font-family: BComic;

        &.Price {
            left: 90px;
        }

        &.Text {
            font-family: IranSans;
            font-size: 12px;
            direction: rtl;
        }
    }
}
.MojriSalari {
    .LargeTxt {
        background: var(--ColorVl);

        input {
            font-family: BComic;
        }
    }
}


.ZipFiles {
    position: relative;
    display: inline-block;
    width: calc(33.33333% - 6px);
    margin: 5px 3px 35px;
    cursor: pointer;
    font-size: 15px;
    color: var(--ColorBs);

    & .ProgressBar {
        width: calc(100% - 20px);
        left: 10px;
        top: 72px;
        filter: unset !important;
    }

    & .User {
        width: 30px;
        height: 30px;
        border-radius: 50%;
        border: 2px solid var(--WtColor);
        box-shadow: 0 0 3px;
        position: absolute;
        left: 8px;
        top: 58px;
    }

    & .File {
        font-size: 8.5px;
        left: 42px;
        position: absolute;
        top: 70px;
        line-height: 20px;
        width: calc(100% - 45px);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    & .Date {
        position: absolute;
        font-size: 8px;
        line-height: 10px;
        right: 5px;
        top: 59px;
    }

    & .Type {
        width: 100%;
        line-height: 70px;
        display: block;
        box-shadow: var(--CrsFadeShadow);
        /*text-shadow: 0 0 30px var(--ColorBs), 0 0 20px var(--ColorBs);*/
        font-size: 20px;
        margin: 0;
        font-family: 'Sarbaz';
    }

    & .Btn {
        position: absolute;
        top: 0;
        width: 30px;
        line-height: 30px;

        &:hover {
            transform: scale(1.1);
            filter: hue-rotate(180deg);
        }

        &.Load {
            right: 0;

            &.DLed {
                color: var(--GreenBs);

                &:before {
                    content: "\f058";
                }
            }
        }

        &.Delt {
            left: 0;
        }
    }

    &.Selected {
        color: var(--GreenBs);

        & .Type {
            background: var(--GreenVl);
        }
    }

    &.ErrorDel .Type {
        color: var(--RedBs);
        background: var(--RedVl);
    }
}
@media (max-width:768px) {
    .ZipFiles {
        width: calc(50% - 10px);
    }
}

@media (min-width:1600px) {
    .ZipFiles {
        width: calc(25% - 10px);
    }
}

@media (min-width:2000px) {
    .ZipFiles {
        width: calc(20% - 10px);
    }
}

.Talked {
    color: #797979 !important;
    background: #fff !important;
}

    .Talked > * {
        opacity: 0.6;
    }

    .Talked img {
        opacity: 0.3;
    }

.BlackBox {
    direction: rtl;
    padding: 10px 1px;
}

    .BlackBox .BirthBox {
        width: 100%;
        margin: 0 auto;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        padding: 10px 5px 15px;
        direction: rtl;
    }

.CrusVideoSetting {
}

    .CrusVideoSetting .EditorDiv {
        display: inline-block;
        position: relative;
        margin: 5px 5px 0;
    }

        .CrusVideoSetting .EditorDiv.SelectedEditr:after {
            content: '\f00c';
            font-family: "Font Awesome 6 Pro";
            font-weight: 900;
            color: var(--GreenLt);
            position: absolute;
            top: -8px;
            left: 2px;
            width: 100%;
            font-size: 22px;
            text-shadow: 0 0 2px #000, 0 0 2px #000;
            line-height: 25px;
            animation: Append 1s forwards;
        }

.LogBox {
    display: inline-flex;
    width: 98%;
    margin: 2px auto;
    cursor: pointer;
    font-size: 9.5px;
    position: relative;
    height: 44px;
    line-height: 35px;
    background: none;
    border-bottom: 1px solid var(--ColorLt);
    padding-bottom: 9px;
    align-items: center;
}

    .LogBox.Default {
        /*color: var(--ColorMid);*/
        color: #8d8d8d;
    }

    .LogBox.Info {
        color: var(--GreenBs);
    }

    .LogBox.Warning {
        color: var(--OrangeBs);
    }

    .LogBox.Critical {
        color: var(--RedBs);
    }

    .LogBox .Icon {
        width: 18px;
        line-height: inherit;
        position: absolute;
        right: 0px;
        top: 0;
        font-size: 12px;
        text-align: center;
    }

        .LogBox .Icon:before {
            font-family: "Font Awesome 6 Pro";
            font-weight: 900;
        }

    .LogBox .Custm {
        width: 24px;
        height: 24px;
        position: absolute;
        right: 22px;
        top: 6px;
        border-radius: 18px;
        background: var(--ColorLt);
    }

    .LogBox .LText {
        right: 54px;
        /* top: 0; */
        position: absolute;
        direction: rtl;
        width: calc(100% - 110px);
        /* white-space: nowrap; */
        /* overflow: hidden; */
        text-overflow: ellipsis;
        text-align: right;
        line-height: 14px;
        padding-top: 5px;
    }

    .LogBox .Date {
        left: 32px;
        top: 28px;
        font-size: 7.5px;
        position: absolute;
        direction: rtl;
        white-space: pre;
        line-height: 14px;
        opacity: 0.8;
    }


    .LogBox .Efect {
        width: 24px;
        height: 24px;
        position: absolute;
        left: 6px;
        top: 6px;
        border-radius: 18px;
        background: var(--ColorLt);
    }

        .LogBox .Custm:hover,
        .LogBox .Efect:hover {
            transform: scale(1.15) rotate(-10deg);
        }

    .LogBox:hover {
    }

        .LogBox:hover .LText {
            right: 60px;
        }

        .LogBox:hover .Date {
            font-size: 7.5px;
            opacity: 1;
        }


/* CSS Nesting */
.DailyGoals {
    width: 100%;
    direction: rtl;
    user-select: none;
    height: 50px;
    margin: 10px 0 10px;
    white-space: pre;
    display: flex;
    justify-content: center;

    .Item {
        display: inline-block;
        height: 54px;
        position: relative;
        line-height: 40px;
        width: 70px;
        margin: 0px 1px;
        cursor: pointer;
        background: var(--ColorVl);
        border-radius: 8px;

        .Goal {
            position: absolute;
            right: 0;
            top: 0;
            font-size: 15px;
            line-height: 30px;
            width: 100%;
            /*padding-right: 10px;*/
            font-family: BComic;
            font-family: Sarbaz;
            letter-spacing: -0.5px;

            .Shot {
                display: inline-block;
                font-size: 10.5px;
                padding-right: 4px;
                opacity: 0.7;
            }

            .Pass {
                display: inline-block;
                font-size: 9.0px;
                padding-right: 5px;
                opacity: 0.8;
                font-family: IranSans;
                letter-spacing: -0.5px;
                filter: hue-rotate(90deg);
                vertical-align: bottom;
                /*line-height: 20px;*/
            }
        }

        .Hint {
            position: absolute;
            right: 0;
            bottom: 0;
            font-size: 9px;
            line-height: 22px;
            width: 100%;
            opacity: 0.8;
            /* border-top: 2px solid var(--ColorAlt); */
            white-space: pre;
            direction: rtl;
            background: var(--ColorLt);
            border-radius: 0 0 8px 8px;
        }

        .Icon {
            font-family: "Font Awesome 6 Pro";
            font-size: 10px;
            position: absolute;
            line-height: 20px;
            width: 16px;
            /* right: 0; */
            top: -22px;
            color: var(--ColorAlt);
            opacity: 0.8;
            width: 40px;
            left: calc(50% - 20px);
            /* border-bottom: 2px solid; */
            background: var(--ColorLt);
            border-radius: 8px 8px 0 0;
            width: 100%;
            left: 0;
            top: -20px;
        }

        &:hover {
            &:before {
                /*right: 15px;*/
                transform: rotate(-8deg) scale(1.2);
                opacity: 0.2;
            }

            .Hint, .Goal .Shot {
                opacity: 1;
            }
        }

        &:first-child {
            width: 100px;
        }
    }

    &:has(.Icon) {
        margin-top: 30px;

        .Item {
            border-radius: 0;
        }
    }
}


.SysBox {
    width: 100%;
    display: inline-block;
    line-height: 32px;
    font-size: 11px;
    margin: 15px 0;
    white-space: pre;
    height: 40px;

    & .Sys {
        display: inline-block;
        width: 90px;
        margin: 0 2px;
        /*padding: 0 0 8px 32px;*/
        position: relative;
        white-space: pre;
        cursor: pointer;
        text-align: left;
        height: 40px;
        font-family: Sarbaz;

        &:before {
            font-family: "Font Awesome 6 Pro";
            line-height: inherit;
            position: absolute;
            left: 0;
            top: 0;
            width: 30px;
            font-size: 16px;
            line-height: 28px;
            text-align: center;
        }

        & .Val {
            position: absolute;
            left: 31px;
            top: 5px;
            line-height: 22px;
        }

        & span {
            position: absolute;
            line-height: 12px;
            left: 5px;
            bottom: 2px;
            font-size: 8px;
            opacity: 0.8;
        }

        &:hover {
            &:before {
                transform: scale(1.1) rotate(-7deg);
            }

            & .Val {
                left: 34px;
            }
        }
    }
}

.PreUploadPanel {
    & .Renders {
        &[ChromaKey]:after {
            position: absolute;
            left: 20px;
            bottom: 10px;
            line-height: 30px;
            font-size: 15px;
            color: var(--WtColor);
            text-shadow: 0 0 3px var(--ColorBs), 0 0 4px var(--ColorBs), 0 0 5px var(--ColorBs), 0 0 8px var(--ColorBs), 0 0 10px var(--ColorBs), 0 0 12px var(--ColorBs);
            animation: Append 0.6s linear forwards 1;
        }

        &[ChromaKey="ChromaKey"]:after {
            content: 'عَکـــس اَصلـــی ☀️';
        }

        &[ChromaKey="Shadow"]:after {
            content: 'سایِـــــــــه هـا 🌙';
            font-size: 12px;
            opacity: 0.5;
        }
    }
}
.Gadjet {
}

.PenBoxImage {
    /*border: 10px solid #14d200;*/
    border: 10px solid var(--GreenLt);
    border-radius: 20px;
    /* padding: 15px; */
    max-width: 94%;
    max-height: 94%;
    background: #fff;
    cursor: cell;
}

.PenBoxClose {
    top: 0;
    right: 0;
    line-height: 80px;
    width: 80px;
    font-size: 30px;
    color: #fff;
    position: absolute;
    text-align: center;
    opacity: 0.5;
    text-shadow: 0 0 5px #000;
}

.PenBoxSave {
    position: absolute;
    font-size: 15px;
    z-index: 10;
    width: 140px;
    left: calc(50% - 70px);
    bottom: 30px;
    text-align: center;
    line-height: 40px;
    box-shadow: 0 0 5px #000;
    border-radius: 8px;
    cursor: pointer;
    opacity: 0.8;
    padding-right: 30px;
    backdrop-filter: blur(10px);
    color: var(--GreenBs);
    background: var(--GreenLt);
    user-select: none;
}

    .PenBoxSave:before {
        font-family: "Font Awesome 6 Pro";
        line-height: inherit;
        display: inline-block;
        position: absolute;
        right: 0;
        width: 50px;
        font-size: 18px;
    }

    .PenBoxSave:hover {
        opacity: 1;
    }

/*.SingleCall {
}

    .SingleCall .Icon.HasRecord {
    }

        .SingleCall .Icon.HasRecord:after {
            font-family: "Font Awesome 6 Pro";
            line-height: 30px;
            padding: 0;
        }*/

.ChatFoot {
    & .ToolBox {
        position: absolute;
        width: 70%;
        height: 44px;
        background: var(--ColorVl);
        left: 15px;
        bottom: 60px;
        border-radius: 12px;
        box-shadow: inset 0 0 2px 1px;
        transition: 0.6s;
        line-height: 44px;
        user-select: none;

        & .LetsPaint {
            width: 50px;
            height: 50px;
            border: 2px solid var(--WtColor);
            border-radius: 50%;
            background: var(--GreenLt);
            /*box-shadow: 0 0 4px 1px var(--GreenBs), inset 0 0 5px var(--GreenBs);*/
            box-shadow: 0 0 4px 0 var(--BkColor), inset 0 0 5px var(--GreenBs);
            position: absolute;
            left: 18px;
            bottom: 10px;
            cursor: pointer;
            display: flex;
            justify-content: center;
            z-index: 10;
            transition: 0.5s;
        }

        & .ToolTitle {
            font-size: 9px;
            direction: rtl;
            position: absolute;
            right: 30px;
            width: calc(100% - 90px);
            opacity: 0.8;

            &:hover {
                right: 33px;
            }
        }

        & .LetsPaint:before {
            font-family: "Font Awesome 6 Pro";
            content: "\f04b";
            position: absolute;
            width: 100%;
            line-height: 46px;
            left: 0;
            top: 0;
            color: var(--WtColor);
            font-size: 20px;
            text-shadow: 0 0 8px var(--GreenBs), 0 0 10px var(--GreenBs);
            padding-left: 4px;
        }

        & .LetsPaint:hover:before {
            transform: scale(1.1) rotate(-10deg);
        }

        & .LetsPaint.Pause {
            box-shadow: 0 0 4px 0 var(--BkColor), inset 0 0 5px var(--OrangeBs);
            background: var(--OrangeLt);

            &:before {
                content: "\f04c";
                text-shadow: 0 0 8px var(--OrangeBs), 0 0 10px var(--OrangeBs);
                padding: 0;
            }
        }

        &.Hide {
            left: -300px;
            opacity: 0;

            & .LetsPaint {
                bottom: 30px;
                left: 300px;
                opacity: 0;
            }
        }
    }

    /*& .ToolBox .AddStep {
        width: 45px;
        font-size: 21px;
        cursor: cell;
        display: inline-flex;
        position: absolute;
        justify-content: center;
        right: 0;
        top: 0;
        line-height: inherit;
        align-items: center;
        text-shadow: 0 0 6px var(--ColorBs), 0 0 7px var(--ColorBs), 0 0 8px var(--ColorBs);
        color: var( --WtColor);
    }

        & .ToolBox .AddStep:before {
            font-family: "Font Awesome 6 Pro";
            content: "\2b";
        }

        & .ToolBox .AddStep:hover {
        }

            & .ToolBox .AddStep:hover:before {
                transform: scale(1.1) rotate(-90deg);
            }*/

    & .ChatBox:has(.TextPM:not(:empty)) + .ToolBox {
        opacity: 0;
        pointer-events: none;
    }
}
[LiveGrp] {
    margin-top: 75px;
}

    [LiveGrp]:has( + :Not(.blueBtn)) {
        opacity: 0.2;
        margin: 25px 20px 3px !important;
        /*display: none;*/
        /*font-size: 10px;*/
    }

        [LiveGrp]:has( + :Not(.blueBtn)) + [LiveGrp] {
            margin-top: 10px !important;
        }

/*[LiveGrp]:has( + :Not(.blueBtn)):after {
            width: 16px;
            height: 16px;
            left: calc(50% - 10px);
            top: 50px;
            border-radius: 5px;
        }*/

.Zoom {
    direction: rtl;
}

    .Zoom .Baner {
        width: 100%;
        border-radius: 20px;
        margin: 15px auto 5px;
    }

    .Zoom .Title {
        font-family: Sarbaz;
        font-size: 19px;
        margin: 5px 0 50px;
        line-height: 30px;
        color: var(--BkColor);
        opacity: 0.5;
    }

    .Zoom .Image {
        width: 95%;
        border-radius: 20px;
        margin: 2px auto 2px;
        min-height: 50px;
        background: var(--ColorLt);
    }

    .Zoom .ReadText {
        text-align-last: right;
        padding: 0 20px 20px;
        color: var(--BkColor);
        opacity: 0.8;
    }

        .Zoom .ReadText:before {
            content: "\f06d";
            font-family: "Font Awesome 6 Pro";
            padding: 0;
            width: 25px;
            text-align-last: center;
            opacity: 0.5;
        }

    .Zoom .ReadTitle {
        width: 83%;
        margin: 25px auto 2px;
        font-family: Sarbaz;
        color: var(--BkColor);
        opacity: 0.5;
    }

    .Zoom .ReadPoint {
        color: var(--BkColor);
        white-space: normal;
        opacity: 0.6;
        margin: 3px 65px 3px 35px;
        width: calc(100% - 100px);
    }

.ZoomitBox {
    width: 98%;
    height: 160px;
    display: inline-block;
    margin: 5px auto;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 0 2px 0px, inset 0 0 3px;
    cursor: pointer;
    border: 2px solid var(--WtColor);
    font-family: Sarbaz;
    line-height: 40px;
    direction: rtl;
    text-align: right;
    color: var(--BkColor);
    background: var(--ColorVl);
}

    .ZoomitBox > * {
        transition: 0.4s;
    }

    .ZoomitBox:hover {
        box-shadow: 0 0 2px 0px, inset 0 0 6px;
    }

    .ZoomitBox .Title {
        position: absolute;
        top: 8px;
        right: 15px;
        direction: rtl;
        color: var(--BkColor);
        opacity: 0.7;
    }

    .ZoomitBox .Date {
        position: absolute;
        font-size: 10px;
        left: 18px;
        top: 132px;
        z-index: 1;
        line-height: 22px;
        color: #ffff;
        text-shadow: 0 0 3px #000;
    }

    .ZoomitBox .Bodys {
        position: absolute;
        right: 30px;
        top: 45px;
        font-size: 10px;
        line-height: 25px;
        width: 55%;
        height: 100px;
        color: var(--BkColor);
        opacity: 0.5;
    }

    .ZoomitBox .Image {
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
        mask-image: linear-gradient(to right, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 70%);
    }

    .ZoomitBox:hover {
        box-shadow: 0 0 2px 0px, inset 0 0 6px;
    }

        .ZoomitBox:hover .Title {
            right: 42px;
            opacity: 0.9;
            transition-delay: 0.42s;
        }

        .ZoomitBox:hover .Bodys {
            right: 65px;
            transition-delay: 0.17s;
        }

        .ZoomitBox:hover .Image {
            left: -55px;
            transition-delay: 0s;
        }

.TV {
    font-family: Sarbaz;
    text-align: center;
    display: flex;
    position: fixed;
    width: 100vw;
    height: 100vh;
    justify-content: center;
    align-items: center;
    background: linear-gradient(121deg, rgba(1,0,22,1) 0%, rgba(14,14,84,1) 47%, rgba(0,19,23,1) 100%);

    & .Img {
        display: inline-block;
        width: calc(100% - 50px);
        border-radius: 30px;
        box-shadow: 0 0 1px 1px #000;
        min-height: 50px;
        max-height: calc(100% - 50px);
        overflow: hidden;
        cursor: pointer;
        font-size: 0;
        position: absolute;
        background: linear-gradient(70deg, #000 0%, #08112f 45% 55%, #000 100%);
    }

    & .Img:before {
            content: '';
            padding-top: 56.25%;
            position: relative;
            display: block;
            height: 0;
        }

    & .Img .Rnd {
            width: 100% !important;
            position: absolute;
            left: 0;
            top: 0;
            filter: blur(0) opacity(1);
            /*transform: scale(1);*/
            transition: 0.5s;
        }

    & .Img .Rnd.SlowZoom {
                animation: SlowZoom 30s linear forwards 1;
            }

    & .Moj {
        width: 240px;
        height: 340px;
        position: absolute;
        left: 50px;
        bottom: 50px;
        border-radius: 20px;
        background: #00000094;
        backdrop-filter: blur(10px);
        padding-top: 120px;
    }

    & .Moj .Pic {
            width: 116px;
            height: 116px;
            background: #000;
            border-radius: 50%;
            box-shadow: 0 0 4px 0.6px #000;
            position: absolute;
            left: 32px;
            top: -30px;
        }

    & .Moj .CusPic {
            width: 60px;
            height: 60px;
            background: #000;
            border-radius: 50%;
            box-shadow: 0 0 3px 0.5px #000;
            position: absolute;
            left: 155px;
            top: 18px;
        }

    & .Moj .Line {
            display: inline-block;
            width: 70%;
            padding-right: 36px;
            margin: 0 11% 0 19%;
            position: relative;
            text-align: right;
            white-space: pre;
            font-size: 14px;
            line-height: 46px;
            text-align: left;
            color: #fff;
            direction: rtl;
            text-shadow: 0 0 8px #000;
        }

    & .Moj .Line:before {
                font-family: "Font Awesome 6 Pro";
                /*content: "\f00c";*/
                line-height: inherit;
                position: absolute;
                display: inline-block;
                top: 0;
                right: 0;
                text-align: center;
                width: 36px;
                font-size: 21px;
                opacity: 0.8;
            }

    & .RndVideo {
        position: absolute;
        left: 0px;
        top: 0px;
        width: 100% !important;
        filter: blur(120px) opacity(0);
        transition: 0.5s;
    }

    & .Logo {
        position: absolute;
        right: 50px;
        top: 50px;
        width: 130px;
        filter: drop-shadow(0 0 6px #000) grayscale(0.4);
        opacity: 0.3;
    }

    & .Btns {
        position: absolute;
        right: 50px;
        bottom: 50px;
        z-index: 100;
        background: #00000059;
        backdrop-filter: blur(10px);
        /*box-shadow: 0 0 5px #000;*/
        border-radius: 30px;
        padding: 0 6px;
        direction: ltr;
    }

    & .Btns .Btn {
            width: 47px;
            line-height: 52px;
            height: 52px;
            display: inline-block;
            position: relative;
            font-size: 22px;
            text-shadow: 0 0 7px black;
            color: #fff;
            align-items: center;
            justify-content: center;
            margin: 3px;
            cursor: pointer;
            opacity: 0.5;
        }

    & .Btns .Btn:before {
                font-family: "Font Awesome 6 Pro";
                font-weight: 900;
                transition: 0.3s;
            }

    & .Btns .Btn:hover {
                transform: scale(1.05);
                opacity: 0.8;
            }

    & .Btns .Btn.PlayRadio {
            }

    & .Btns .Btn.PlayRadio.Pause:before {
                    content: "\f04c";
                }

    & .Btns {
    }

    & .Btns:before {
            content: "\f3f4";
            font-family: "Font Awesome 6 Pro";
            font-weight: 900;
            transition: 0.3s;
            transition-delay: 0s;
            position: absolute;
            line-height: 58px;
            height: 58px;
            width: 58px;
            left: -35px;
            top: 0;
            color: #fff;
            font-size: 23px;
            opacity: 0;
            animation: D360 1s linear infinite;
            pointer-events: none;
        }

    & .Btns.Loading {
        }

    & .Btns.Loading:before {
                transition-delay: 1s;
                left: -65px;
                opacity: 0.5;
                animation: D360 1.2s linear infinite;
            }

    & .WelText {
        font-family: 'Sarbaz';
        font-size: 24px;
        direction: rtl;
        line-height: 60px;
        position: absolute;
        top: calc(50% + 300px);
        opacity: 0;
    }

    &.Video .Img {
    }

    &.Video .Img .Rnd {
            filter: blur(120px) opacity(0.3);
        }

    &.Video .Img .RndVideo {
            filter: blur(0) opacity(1);
        }

    & .Img.Fade {
    }

    & .Img.Fade .Rnd,
    & .Img.Fade .RndVideo {
            filter: blur(120px) opacity(0.3);
        }

    &.FadeAll {
    }

    &.FadeAll .Img,
    &.FadeAll .RndVideo {
            opacity: 0.01;
            margin-top: -200px;
        }

    &.FadeAll .Moj {
            left: -350px;
            opacity: 0.01;
        }

    &.FadeAll .Btns {
            opacity: 0.01;
            bottom: 20px;
        }

    &.Insta {
        direction: rtl;
        padding: 0 70px;
    }

    &.Insta .Img {
            position: absolute;
            display: inline-block;
            height: calc(100% - 60px);
            aspect-ratio: 0.5625;
            width: unset;
            right: 60px;
        }

    &.Insta .Logo {
            right: calc(66.6% - 70px);
            top: calc(33.3% - 70px);
            transform: scale(3.5);
            opacity: 0.6;
        }

    &.Insta .Moj {
            display: none;
        }

    &.Welcome {
    }

    &.Welcome .Logo {
            right: calc(50% - 70px);
            transform: scale(4);
            top: calc(50% - 170px);
            opacity: 0.8;
        }

    &.Welcome .WelText {
            opacity: 1;
            top: calc(50% + 220px);
        }


}
@keyframes SlowZoom {
    0% {
        transform: scale(1.0);
    }

    to {
        transform: scale(1.4);
    }
}

.WhatsAppChatBox {
    width: 98%;
    height: 60px;
    display: inline-block;
    margin: 3px auto;
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 0 2px 0px;
    cursor: pointer;
    font-family: Sarbaz;
    line-height: 50px;
    direction: rtl;
    text-align: right;
    font-size: 11px;
    padding: 0 15px;
    direction: ltr;
}

    .WhatsAppChatBox > * {
        transition: 0.4s;
    }

    .WhatsAppChatBox .Body {
        position: absolute;
        right: 50px;
        line-height: 25px;
        top: 10px;
        direction: rtl;
    }

        .WhatsAppChatBox .Body > span {
            opacity: 0.35;
            padding-right: 5px;
            display: inline-block;
            font-size: 9px;
            direction: ltr;
        }

    .WhatsAppChatBox .UsrImg {
        position: absolute;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        right: 10px;
        top: 8px;
    }

    .WhatsAppChatBox .LastMsg {
        position: absolute;
        opacity: 0.6;
        font-size: 9px;
        right: 70px;
        top: 34px;
        line-height: 18px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        width: calc(100% - 110px);
        direction: rtl;
    }

    .WhatsAppChatBox .Date {
        position: absolute;
        font-size: 8.5px;
        top: 6px;
        z-index: 1;
        line-height: 20px;
        color: var(--ColorBs);
        direction: rtl;
        font-family: 'IranSans';
        opacity: 0.9;
    }

    .WhatsAppChatBox:hover {
        background: var(--ColorLt);
        padding: 0 25px;
    }

        .WhatsAppChatBox:hover .Body {
            right: 60px;
        }

        .WhatsAppChatBox:hover .LastMsg {
            right: 100px;
            opacity: 0.8;
        }

.OnlinezBox {
    background: var(--ColorLt);
    border-radius: 20px;
    margin: 20px 5px;
    padding: 10px 5px;
}

    .OnlinezBox .UserAvatar {
        margin: 2px;
    }

        .OnlinezBox .UserAvatar.Removed {
            transform: rotate(180deg);
            filter: grayscale(0.75) opacity(0.5);
        }

.MyVaziat {
    display: block;
    height: 40px;
    /*margin: 5px auto;*/
    margin: 18px auto 8px;
    box-shadow: 0 0 5px 1px;
    width: 100px;
    border-radius: 20px;
    background: var(--GreenLt);
    color: var(--GreenBs);
    border: 2px solid var(--WtColor);
    cursor: pointer;
    position: relative;
}

    .MyVaziat:before {
        font-family: "Font Awesome 6 Pro";
        content: "\f185";
        position: absolute;
        right: 0;
        width: 40px;
        font-weight: 900;
        text-align: center;
        font-size: 20px;
        line-height: 36px;
        transition: 0.5s;
    }

    .MyVaziat.Offline {
        color: var(--RedBs);
        background: var(--RedLt);
        filter: grayscale(0.7) opacity(0.8);
    }

        .MyVaziat.Offline:before {
            content: "\f186";
            right: calc(100% - 40px);
            transform: rotate(180deg);
        }

.RecentEdits {
    width: 30px;
    line-height: 30px;
    height: 30px;
    position: absolute;
    left: -46px;
    opacity: 0.9;
    /* animation: Blink 1.5s 10; */
    /* color: var(--GreenLt); */
    /* text-shadow: 0 0 3px var(--BkColor), 0 0 5px var(--BkColor), 0 0 7px var(--BkColor); */
    color: var(--OrangeBs);
    font-size: 12px;
    /* color: var(--RedBs); */
    background: var(--OrangeVl);
    border-radius: 50%;
    box-shadow: 0 0 2px 1px;
    top: 2px;
}

    .RecentEdits:before {
        content: "\f1da";
        font-family: "Font Awesome 6 Pro";
    }

    .RecentEdits:hover {
        box-shadow: 0 0 4px 1px;
        opacity: 1;
    }


.MyEftekharat {
    width: 30px;
    line-height: 30px;
    height: 30px;
    position: absolute;
    right: -46px;
    opacity: 0.9;
    color: var(--OrangeBs);
    font-size: 12px;
    background: var(--OrangeVl);
    border-radius: 50%;
    box-shadow: 0 0 2px 1px;
    top: 2px;
}

    .MyEftekharat:before {
        font-family: "Font Awesome 6 Pro";
        animation: Blink 1.5s 10;
    }

    .MyEftekharat:hover {
        box-shadow: 0 0 4px 1px;
        opacity: 1;
    }

.DevicesBTN {
    cursor: pointer;
    width: 30px;
    line-height: 30px;
    height: 30px;
    position: absolute;
    right: -90px;
    opacity: 0.9;
    color: var(--OrangeBs);
    font-size: 12px;
    background: var(--OrangeVl);
    border-radius: 50%;
    box-shadow: 0 0 2px 1px;
    top: 2px;
}

    .DevicesBTN:before {
        font-family: "Font Awesome 6 Pro";
    }

    .DevicesBTN:hover {
        box-shadow: 0 0 4px 1px;
        opacity: 1;
    }

    .DevicesBTN:focus-visible {
        outline: 2px solid var(--OrangeBs);
        outline-offset: 3px;
    }


.AiCard {
    direction: ltr;
}

    .AiCard .ShowAIedBefore {
        width: 46px;
        line-height: 46px;
        height: 46px;
        left: calc(50% - 23px);
        top: 25px;
        backdrop-filter: blur(4px);
        position: absolute;
        z-index: 100;
        -webkit-text-stroke: 2px var(--WtColor);
        background: var(--TransPr);
        border-radius: 50%;
        box-shadow: 0 0 5px 1px;
        paint-order: stroke fill;
        cursor: pointer;
    }

        .AiCard .ShowAIedBefore:hover {
            box-shadow: 0 0 8px 1px;
        }

        .AiCard .ShowAIedBefore:before {
            font-family: "Font Awesome 6 Pro";
            content: "\f356";
            font-size: 25px;
            line-height: inherit;
        }

    .AiCard .Prompt {
        margin: 0 auto 0;
        font-size: 10px;
        line-height: 20px;
        min-height: 70px;
        display: inline-flex;
        width: 100%;
        justify-content: center;
        align-items: center;
    }

    .AiCard .Detail {
        font-size: 11px;
        line-height: 29px;
        margin: 0 10px;
        width: calc(100% - 20px);
    }

    .AiCard .Imgs {
        width: 48%;
        min-width: calc(50% - 4px);
        display: inline-block;
        margin: 0 2px 0;
    }

        .AiCard .Imgs.ImgA {
        }

        .AiCard .Imgs.ImgB {
        }

    .AiCard .UserAvatar {
        position: absolute;
        z-index: 1;
        left: 16px;
        top: -8px;
        padding: 0px;
        width: 38px;
        height: 38px;
        box-shadow: 0 0 3px 1px;
    }

    .AiCard .Footer {
        white-space: pre;
        font-size: 9.5px;
        opacity: 0.5;
        padding-top: 10px;
    }

    .AiCard.Alone {
        width: calc(50% - 10px);
        display: inline-block;
        margin: 12px 5px 5px;
        box-shadow: 0 0 3px;
        border-radius: 14px;
        padding: 6px 4px;
        background: var(--ColorVl);
        vertical-align: top;
    }

.msg .AiCard {
    margin: -8px -8px 20px;
}

@media (min-width:1900px) {
    .AiCard.Alone {
        width: calc(25% - 10px);
    }
}

@media (max-width:500px) {
    .AiCard.Alone {
        width: calc(100% - 10px);
    }
}

/* Runtime diagnostics: Bootstrap handles cards, tables, spacing and theme. */
.CruseBootstrapModalHost .modal.RuntimeModal { --bs-modal-width: 1100px; }
.cruse-admin .RuntimeReport { direction: ltr; text-align: left; }
.cruse-admin .RuntimeReport .RuntimeBox { overflow-wrap: anywhere; }
.cruse-admin .RuntimeReport .RuntimeTableWrap { max-height: 60vh; }
.cruse-admin .RuntimeReport th { position: sticky; top: 0; z-index: 1; white-space: nowrap; text-align: left; }
.cruse-admin .RuntimeReport td { max-width: 220px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: left; }

.AIedBefore {
    width: 1920px;
    max-width: 97%;
    box-shadow: none;
}

    .AIedBefore .Axxx.Rxd2 {
        animation: rxd2Blink 3s ease-in-out infinite;
    }

@keyframes rxd2Blink {
    0% {
        opacity: 1;
    }

    37% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }

    82% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

/* Cruse admin: complete scoped Bootstrap, shared typography and panel layout. */
.CruseBootstrapModalHost .DeviceCallLogModal { --bs-modal-width: 620px; }
.cruse-admin .cd-call-log .cd-call-day { display: flex; align-items: center; gap: 12px; margin: 18px 0 8px; color: var(--bs-secondary-color); font-size: 12px; }
.cruse-admin .cd-call-log .cd-call-day::after { content: ''; flex: 1; border-top: 1px solid var(--bs-border-color); }
.cruse-admin .cd-call-log .cd-call-row { display: flex; align-items: center; gap: 10px; padding: 12px 0; border-bottom: 1px solid var(--bs-border-color); }
.cruse-admin .cd-call-log .cd-call-avatar { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.cruse-admin .cd-call-log .cd-call-avatar[CustmID] { cursor: pointer; }
.cruse-admin .cd-call-log .cd-call-person { flex: 1; min-width: 0; }
.cruse-admin .cd-call-log .cd-call-person strong { font-size: 13px; overflow-wrap: anywhere; }
.cruse-admin .cd-call-log .cd-call-code { margin-inline-start: 7px; opacity: .5; font: 11px Arial,sans-serif; display: inline-block; }
.cruse-admin .cd-call-log .cd-call-phone { display: block; text-align: right; font: 11px Arial,sans-serif; color: var(--bs-secondary-color); margin-top: 4px; }
.cruse-admin .cd-call-log .cd-call-timing { display: flex; flex-direction: column; gap: 4px; flex-shrink: 0; text-align: left; font-size: 12px; }
.cruse-admin .cd-call-log .cd-call-timing small { color: var(--bs-secondary-color); font: 11px Arial,sans-serif; }
.CruseDeviceManager.cruse-admin {
    --bs-font-sans-serif: IranSans, sans-serif;
    --bs-body-font-family: IranSans, sans-serif;
    --bs-body-font-size: .875rem;
    --bs-body-line-height: 1.8;
    --bs-border-radius: .75rem;
    --bs-border-radius-lg: 1rem;
    --bs-border-color: #e3e8ef;
    --bs-body-bg: #fff;
    --bs-body-color: #253247;
    --bs-tertiary-bg: #f5f7fb;
    direction: rtl; text-align: right; font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size); line-height: var(--bs-body-line-height);
    color: var(--bs-body-color); background: var(--bs-tertiary-bg);
    padding: 24px; border-radius: 16px; min-width: 0;
    container-type: inline-size; container-name: cruse-admin;
}
.CruseDeviceManager.cruse-admin[data-bs-theme=dark] {
    --bs-border-color: #364153; --bs-body-bg: #202a39;
    --bs-body-color: #e6edf7; --bs-tertiary-bg: #182231;
}
.CruseDeviceManager.cruse-admin .btn { --bs-btn-font-size: .8125rem; --bs-btn-padding-y: .55rem; --bs-btn-padding-x: 1rem; --bs-btn-border-radius: .65rem; min-height: 40px; }
.CruseDeviceManager.cruse-admin .btn-primary { --bs-btn-bg: #435bd8; --bs-btn-border-color: #435bd8; --bs-btn-hover-bg: #354bbd; --bs-btn-hover-border-color: #354bbd; --bs-btn-active-bg: #2e42ab; --bs-btn-active-border-color: #2e42ab; --bs-btn-disabled-bg: #435bd8; --bs-btn-disabled-border-color: #435bd8; }
.CruseDeviceManager.cruse-admin .btn-outline-secondary { --bs-btn-color: var(--bs-secondary-color); --bs-btn-border-color: var(--bs-border-color); }
.CruseDeviceManager.cruse-admin .form-control, .CruseDeviceManager.cruse-admin .form-select { font-size: .875rem; min-height: 44px; line-height: 1.8; }
.CruseDeviceManager.cruse-admin .form-control:focus, .CruseDeviceManager.cruse-admin .form-select:focus { border-color: #8292ee; box-shadow: 0 0 0 .2rem rgba(67,91,216,.14); }
.CruseDeviceManager.cruse-admin .form-check { padding: 0; cursor: pointer; }
.CruseDeviceManager.cruse-admin .form-check-input { flex-shrink: 0; cursor: pointer; }
.CruseDeviceManager.cruse-admin .form-check-input:checked { background-color: #435bd8; border-color: #435bd8; }
.CruseDeviceManager.cruse-admin .form-check-input:focus { box-shadow: 0 0 0 .2rem rgba(67,91,216,.18); }
.CruseDeviceManager.cruse-admin :focus-visible { outline: 2px solid #8292ee; outline-offset: 3px; }
.CruseDeviceManager.cruse-admin .h5 { font-size: 1.125rem; font-weight: 700; line-height: 1.7; }
.CruseDeviceManager.cruse-admin .card { --bs-card-bg: var(--bs-body-bg); --bs-card-border-color: var(--bs-border-color); --bs-card-border-radius: .875rem; }
.CruseDeviceManager.cruse-admin .cd-header { padding-bottom: 20px; border-bottom: 1px solid var(--bs-border-color); }
.CruseDeviceManager.cruse-admin .cd-row { display: grid; grid-template-columns: minmax(110px, 1fr) 28px 28px minmax(140px, 190px) auto; align-items: center; gap: 12px; padding: 16px; margin: 0; font-size: 13px; }
.CruseDeviceManager.cruse-admin .cd-identity { display: flex; align-items: center; gap: 10px; min-width: 0; }
.CruseDeviceManager.cruse-admin .cd-identity > i { color: #7182df; font-size: 20px; }
.CruseDeviceManager.cruse-admin .cd-identity strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.CruseDeviceManager.cruse-admin .cd-badge, .CruseDeviceManager.cruse-admin .cd-worker { display: inline-flex; align-items: center; justify-content: center; color: var(--bs-secondary-color); }
.CruseDeviceManager.cruse-admin .cd-worker-selected { color: var(--bs-primary-text-emphasis); }
.CruseDeviceManager.cruse-admin .cd-active { color: var(--bs-success-text-emphasis); }
.CruseDeviceManager.cruse-admin .cd-seen { display: flex; align-items: center; gap: 8px; color: var(--bs-secondary-color); font-size: 11px; }
.CruseDeviceManager.cruse-admin .cd-actions { display: flex; align-items: center; gap: 6px; }
.CruseDeviceManager.cruse-admin .cd-actions .btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; margin: 0; font-size: 14px; }
.CruseDeviceManager.cruse-admin .cd-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.CruseDeviceManager.cruse-admin .cd-message:empty, .CruseDeviceManager.cruse-admin .aj-message:empty { display: none; }
.CruseDeviceManager.cruse-admin .cd-message[data-kind=error] { --bs-alert-color: var(--bs-danger-text-emphasis); --bs-alert-bg: var(--bs-danger-bg-subtle); --bs-alert-border-color: var(--bs-danger-border-subtle); }
.CruseDeviceManager.cruse-admin .cd-message[data-kind=success] { --bs-alert-color: var(--bs-success-text-emphasis); --bs-alert-bg: var(--bs-success-bg-subtle); --bs-alert-border-color: var(--bs-success-border-subtle); }
.CruseDeviceManager.cruse-admin textarea[dir=ltr] { text-align: left; font-family: monospace; }
.CruseDeviceManager.cruse-admin [hidden] { display: none !important; }
.CruseDeviceManager.cruse-admin .cd-disclosure { background: var(--bs-body-bg); }
.CruseDeviceManager.cruse-admin summary { cursor: pointer; }
.CruseDeviceManager.cruse-admin .cd-disclosure[open] > summary { margin-bottom: 16px; }
.CruseDeviceManager.cruse-admin .aj-toolbar label { flex: 1; min-width: 160px; margin-bottom: 0 !important; }
.CruseDeviceManager.cruse-admin .aj-toolbar .btn { min-height: 44px; }
.CruseDeviceManager.cruse-admin .aj-summary { display: grid; grid-template-columns: 55px 40px 100px minmax(80px, 1fr) minmax(120px, 2fr) 135px 16px; align-items: center; gap: 12px; padding: 16px; margin: 0; font-size: 13px; list-style: none; }
.CruseDeviceManager.cruse-admin .aj-avatar { width: 28px; height: 28px; border-radius: 50%; overflow: hidden; display: flex; align-items: center; justify-content: center; background: var(--bs-tertiary-bg); color: var(--bs-secondary-color); }
.CruseDeviceManager.cruse-admin .aj-avatar img { width: 100%; height: 100%; object-fit: cover; }
.CruseDeviceManager.cruse-admin .aj-customer { display: inline-flex; align-items: center; gap: 8px; min-width: 0; }
.CruseDeviceManager.cruse-admin .aj-customer .aj-recipient { min-width: 0; overflow-wrap: anywhere; }
.CruseDeviceManager.cruse-admin .aj-customer-id { direction: ltr; font-family: Arial, sans-serif; font-size: .85em; opacity: .5; }
.CruseDeviceManager.cruse-admin .aj-avatar, .CruseDeviceManager.cruse-admin .aj-avatar-placeholder { cursor: pointer; }
.CruseDeviceManager.cruse-admin .aj-avatar-placeholder { width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--bs-tertiary-bg); color: var(--bs-secondary-color); }
.CruseDeviceManager.cruse-admin .aj-status-group { display: inline-flex; align-items: center; gap: 7px; }
.CruseDeviceManager.cruse-admin .aj-sms-icon { color: var(--bs-secondary-color); opacity: .75; font-size: 15px; }
.CruseDeviceManager.cruse-admin .aj-content { display: flex; align-items: center; gap: 8px; }
.CruseDeviceManager.cruse-admin .aj-content > i { flex-shrink: 0; color: var(--bs-secondary-color); }
.CruseDeviceManager.cruse-admin .aj-categories .btn { min-height: 36px; padding-inline: 16px; }
.CruseDeviceManager.cruse-admin .aj-summary::-webkit-details-marker { display: none; }
.CruseDeviceManager.cruse-admin .aj-summary::after { content: ''; width: 7px; height: 7px; border: solid var(--bs-secondary-color); border-width: 0 0 2px 2px; transform: rotate(-45deg); justify-self: center; }
.CruseDeviceManager.cruse-admin .aj-row[open] > .aj-summary::after { transform: rotate(135deg); }
.CruseDeviceManager.cruse-admin .aj-summary > span { min-width: 0; }
.CruseDeviceManager.cruse-admin .aj-summary strong, .CruseDeviceManager.cruse-admin .aj-summary small { display: block; }
.CruseDeviceManager.cruse-admin .aj-summary small, .CruseDeviceManager.cruse-admin .aj-summary time { color: var(--bs-secondary-color); font-size: 11px; }
.CruseDeviceManager.cruse-admin .aj-preview { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.CruseDeviceManager.cruse-admin .aj-identity, .CruseDeviceManager.cruse-admin .aj-content { overflow-wrap: anywhere; }
.CruseDeviceManager.cruse-admin .aj-status { padding: 7px 10px; font-weight: 500; color: var(--bs-secondary-text-emphasis); background: var(--bs-secondary-bg-subtle); }
.CruseDeviceManager.cruse-admin .aj-status[data-status=Pending] { color: var(--bs-warning-text-emphasis); background: var(--bs-warning-bg-subtle); }
.CruseDeviceManager.cruse-admin .aj-status[data-status=Done] { color: var(--bs-success-text-emphasis); background: var(--bs-success-bg-subtle); }
.CruseDeviceManager.cruse-admin .aj-status[data-status=Failed] { color: var(--bs-danger-text-emphasis); background: var(--bs-danger-bg-subtle); }
.CruseDeviceManager.cruse-admin .aj-status[data-status=Processing] { color: var(--bs-primary-text-emphasis); background: var(--bs-primary-bg-subtle); }
.CruseDeviceManager.cruse-admin .aj-delivery { width: 38px; min-height: 30px; display: inline-flex; align-items: center; justify-content: center; padding: 5px 8px; font-size: 15px; }
.CruseDeviceManager.cruse-admin .aj-status-group.aj-tone-green { color: #06a322; }
.CruseDeviceManager.cruse-admin .aj-status-group.aj-tone-red { color: #ff7373; }
.CruseDeviceManager.cruse-admin .aj-status-group.aj-tone-blue { color: #0087ff; }
.CruseDeviceManager.cruse-admin .aj-status-group.aj-tone-muted { color: #b4bbc3; }
.CruseDeviceManager.cruse-admin .aj-detail { padding: 16px; font-size: 13px; }
.CruseDeviceManager.cruse-admin .aj-detail pre { white-space: pre-wrap; overflow-wrap: anywhere; padding: 12px; margin-top: 8px; background: var(--bs-tertiary-bg); border-radius: 8px; color: var(--bs-body-color); }
/* Scoped native Bootstrap dialogs, with entrance-only motion to preserve synchronous Back handling. */
.CruseBootstrapModalHost { position: relative; z-index: 2100; }
.CruseBootstrapModalHost .modal { --bs-modal-width: 680px; }
.CruseBootstrapModalHost .modal-content { border-radius: 18px; }
.CruseBootstrapModalHost .modal.show .modal-dialog { animation: cruse-modal-enter .18s ease-out; }
.CruseBootstrapModalHost .modal-backdrop.show { animation: cruse-backdrop-enter .18s ease-out; }
@keyframes cruse-modal-enter {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes cruse-backdrop-enter {
    from { opacity: 0; }
    to { opacity: var(--bs-backdrop-opacity, .5); }
}
@media (prefers-reduced-motion: reduce) {
    .CruseBootstrapModalHost .modal.show .modal-dialog,
    .CruseBootstrapModalHost .modal-backdrop.show { animation: none; }
}
.CruseDeviceManager.cruse-admin.cd-task-modal { width: 100%; box-sizing: border-box; margin: 0; padding: 28px 24px; background: var(--bs-body-bg); }
.CruseDeviceManager.cruse-admin.cd-task-modal form { margin-bottom: 0; }
.CruseDeviceManager.cruse-admin.cd-task-modal textarea { max-width: 100%; }
/* Panels can be narrower than the viewport in the desktop split layout. */
@container cruse-admin (max-width: 760px) {
    .CruseDeviceManager.cruse-admin .aj-summary { grid-template-columns: 55px 40px minmax(0, 1fr) 16px; gap: 10px; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-content { grid-column: 1 / 4; grid-row: 2; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-identity { grid-column: 1 / 3; grid-row: 3; }
    .CruseDeviceManager.cruse-admin .aj-summary time { grid-column: 3; grid-row: 3; }
    .CruseDeviceManager.cruse-admin .aj-summary::after { grid-column: 4; grid-row: 1; }
}
@container cruse-admin (max-width: 560px) {
    .CruseDeviceManager.cruse-admin .cd-row { grid-template-columns: minmax(0, 1fr) 28px 28px; }
    .CruseDeviceManager.cruse-admin .cd-seen, .CruseDeviceManager.cruse-admin .cd-actions { grid-column: 1 / 4; }
    .CruseDeviceManager.cruse-admin .cd-actions { justify-content: flex-end; }
}
@media (max-width: 800px) {
    .CruseDeviceManager.cruse-admin .aj-summary { grid-template-columns: 55px 40px minmax(0, 1fr) 16px; gap: 10px; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-content { grid-column: 1 / 4; grid-row: 2; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-identity { grid-column: 1 / 3; grid-row: 3; }
    .CruseDeviceManager.cruse-admin .aj-summary time { grid-column: 3; grid-row: 3; }
    .CruseDeviceManager.cruse-admin .aj-summary::after { grid-column: 4; grid-row: 1; }
}
@media (max-width: 620px) {
    .CruseDeviceManager.cruse-admin { padding: 16px 12px; }
    .CruseDeviceManager.cruse-admin .cd-row { grid-template-columns: minmax(0, 1fr) 28px 28px; gap: 12px; padding: 14px; }
    .CruseDeviceManager.cruse-admin .cd-seen { grid-column: 1 / 4; }
    .CruseDeviceManager.cruse-admin .cd-actions { grid-column: 1 / 4; justify-content: flex-end; }
    .CruseDeviceManager.cruse-admin .cd-actions .btn { width: 44px; height: 44px; }
    .CruseDeviceManager.cruse-admin.cd-task-modal { padding: 24px 16px; }
}

/* Job rows: give the customer identity the main visual weight; keep time compact. */
.CruseDeviceManager.cruse-admin .aj-summary {
    grid-template-columns: 48px minmax(220px, 2fr) auto minmax(90px, 1fr) 92px 16px;
    gap: 14px;
    min-height: 76px;
}
.CruseDeviceManager.cruse-admin .aj-customer { min-width: 0; gap: 10px; }
.CruseDeviceManager.cruse-admin .aj-customer .aj-avatar,
.CruseDeviceManager.cruse-admin .aj-customer .aj-avatar-placeholder { width: 36px; height: 36px; flex: 0 0 36px; }
.CruseDeviceManager.cruse-admin .aj-customer .aj-recipient { font-size: 14px; line-height: 1.45; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.CruseDeviceManager.cruse-admin .aj-status-group { direction: ltr; flex-direction: row; min-width: 72px; justify-content: center; gap: 9px; padding: 10px 12px; border-radius: 12px; background: var(--bs-tertiary-bg); }
.CruseDeviceManager.cruse-admin .aj-delivery { width: 34px; min-height: 34px; padding: 5px; font-size: 17px; background: transparent; }
.CruseDeviceManager.cruse-admin .aj-sms-icon { font-size: 17px; opacity: .8; }
.CruseDeviceManager.cruse-admin .aj-summary time { white-space: nowrap; text-align: center; }
.CruseDeviceManager.cruse-admin .aj-identity { font-size: 11px; font-weight: 500; opacity: .62; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.CruseDeviceManager.cruse-admin .aj-identity strong { font-weight: 500; }
.CruseDeviceManager.cruse-admin .aj-customer .aj-recipient,
.CruseDeviceManager.cruse-admin .aj-customer .aj-customer-id { display: inline !important; }
.CruseDeviceManager.cruse-admin .aj-customer .aj-customer-id { margin-inline-start: 3px; }
.CruseDeviceManager.cruse-admin .aj-status-group .aj-status.aj-delivery {
    color: inherit;
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}
.CruseDeviceManager.cruse-admin .aj-status-group .aj-sms-icon { color: inherit; opacity: 1; background: transparent; }

@media (max-width: 800px) {
    .CruseDeviceManager.cruse-admin .aj-summary {
        grid-template-columns: 48px minmax(0, 1fr) auto 16px;
        min-height: 72px;
    }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-identity { grid-column: 1 / 3; grid-row: 2; }
    .CruseDeviceManager.cruse-admin .aj-summary time { grid-column: 3; grid-row: 2; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-customer { grid-column: 2; grid-row: 1; }
    .CruseDeviceManager.cruse-admin .aj-summary .aj-status-group { grid-column: 3; grid-row: 1; }
}

/* Codex: Shared report UI — temporary home; move together with CruseReportUI in Mojri.js. */
.cruse-admin .cr-report-person { display:inline-flex; align-items:center; gap:8px; min-width:0; }
.cruse-admin .cr-report-avatar { width:28px; height:28px; flex:0 0 28px; object-fit:cover; cursor:pointer; }
.cruse-admin .cr-report-name-line { display:inline-flex; align-items:baseline; gap:5px; flex-wrap:wrap; }
.cruse-admin .cr-report-name { font-size:calc(1em - 1px); }
.cruse-admin .cr-report-id { font:9px/1.6 Arial,sans-serif; opacity:.5; }
.cruse-admin .cr-report-icon { position:relative; display:inline-flex; align-items:center; justify-content:center; flex:0 0 32px; width:32px; height:32px; padding:5px; border:0; border-radius:12px; background:transparent; vertical-align:middle; cursor:help; }
.cruse-admin .cr-report-icon > i { font-size:16px; line-height:1; }
.cruse-admin .cr-report-icon:hover { background:var(--bs-tertiary-bg); }
.cruse-admin .cr-report-icon:focus-visible { outline:2px solid currentColor; outline-offset:2px; }
.cruse-admin .cr-report-count { position:absolute; right:2px; left:auto; top:1px; min-width:15px; height:15px; font-size:8px; font-weight:700; line-height:15px; }
.cruse-admin .cr-tone-green { color:#06a322; }
.cruse-admin .cr-tone-blue { color:#0087ff; }
.cruse-admin .cr-tone-red { color:#ff7373; }
.cruse-admin .cr-tone-muted { color:#b4bbc3; }
.cruse-admin .cr-report-stats { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
/* Codex: End shared report UI. */

/* Codex: Shared report metrics and device actions. */
.cruse-admin .cr-report-metric { display:inline-flex; direction:rtl; align-items:center; gap:0; width:70px; flex:0 0 70px; box-sizing:border-box; padding:3px; border-radius:8px; background:var(--bs-tertiary-bg); }
.cruse-admin .cr-tone-purple { color:#7952d9; }
.cruse-admin .cm-channel-metric.cr-tone-green { background:rgba(6,163,34,.10); }
.cruse-admin .cm-channel-metric.cr-tone-purple { background:rgba(121,82,217,.10); }
.cruse-admin .cr-report-metric > .cr-report-icon { width:24px; height:24px; flex-basis:24px; padding:2px; }
.cruse-admin .cr-report-metric > strong { flex:1; min-width:0; text-align:center; color:inherit; font:700 11px/1.5 Arial,sans-serif; font-variant-numeric:tabular-nums; }
.cruse-admin .cr-tone-orange { color:#db8900; }
.cruse-admin .cr-reply-unanswered > .fa-reply { animation: cr-reply-pulse 1.8s ease-in-out infinite; }
@keyframes cr-reply-pulse { 0%, 100% { opacity:1; } 50% { opacity:.35; } }
@media (prefers-reduced-motion: reduce) { .cruse-admin .cr-reply-unanswered > .fa-reply { animation:none; } }
.cruse-admin .cm-campaign-open { border:0; padding:4px 0; background:transparent; color:var(--bs-link-color); text-align:start; cursor:pointer; font-size:13px; font-weight:600; }
.cruse-admin .cm-campaign-open:hover { text-decoration:underline; }
.CruseDeviceManager.cruse-admin .cd-row .cr-report-icon { width:32px; height:32px; min-height:32px; padding:5px; border:0; background:transparent; border-radius:12px; }
.CruseDeviceManager.cruse-admin .cd-row .cr-tone-green { color:#06a322; }
.CruseDeviceManager.cruse-admin .cd-row .cr-tone-muted { color:#b4bbc3; }
.CruseDeviceManager.cruse-admin .cd-row .cr-tone-blue { color:#0087ff; }
.CruseDeviceManager.cruse-admin .cd-row .cr-tone-red { color:#ff7373; }

/* Codex: Compact campaign metadata and device last connection. */
.cruse-admin .cm-campaign-date { display:inline-block; vertical-align:baseline; margin-inline-start:8px; font-size:10px; color:var(--bs-secondary-color); }
.cruse-admin .cr-report-phase { display:inline-flex; align-items:center; gap:2px; width:110px; flex:0 0 110px; box-sizing:border-box; font-size:11px; white-space:nowrap; }
.cruse-admin .cm-campaign-stats { width:max-content; flex-wrap:nowrap; }
.CruseDeviceManager.cruse-admin .cd-row { grid-template-columns:minmax(110px,1fr) 32px 32px auto; }
.CruseDeviceManager.cruse-admin .cd-identity { flex-wrap:wrap; gap:6px; }
.CruseDeviceManager.cruse-admin .cd-identity .cd-seen { display:inline; font-size:10px; font-weight:400; color:var(--bs-secondary-color); }
@media(max-width:800px) { .CruseDeviceManager.cruse-admin .cd-row { grid-template-columns:minmax(0,1fr) 32px 32px; } }

/* Codex: Compact job summaries and unread WhatsApp delivery contrast. */
.cruse-admin .cr-tone-delivered, .CruseDeviceManager.cruse-admin .aj-status-group.aj-tone-delivered { color:#8b949e; }
.CruseDeviceManager.cruse-admin .aj-summary { min-height:50px; padding-top:8px; padding-bottom:8px; row-gap:5px; }
.CruseDeviceManager.cruse-admin .aj-status-group { padding-top:1px; padding-bottom:1px; }
