Cici responsive + customizations

Cici website is more suitable for wide screens.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey, Greasemonkey или Violentmonkey.

You will need to install an extension such as Tampermonkey to install this script.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Userscripts.

Чтобы установить этот скрипт, сначала вы должны установить расширение браузера, например Tampermonkey.

Чтобы установить этот скрипт, вы должны установить расширение — менеджер скриптов.

(у меня уже есть менеджер скриптов, дайте мне установить скрипт!)

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

(у меня уже есть менеджер стилей, дайте мне установить скрипт!)

/* ==UserStyle==
@name           Cici responsive + customizations
@version        1.0.12
@description    Cici website is more suitable for wide screens.
@author         BreatFR (https://breat.fr)
@namespace      https://gitlab.com/breatfr
@homepageURL    https://gitlab.com/breatfr/cici
@supportURL     https://discord.gg/Q8KSHzdBxs
@license        AGPL-3.0-or-later; https://www.gnu.org/licenses/agpl-3.0.txt
@preprocessor   stylus

@var    select      customciciface      "Custom Cici face"                      {
    "Large Cici face": "cmlgciciface",
    "Small Cici face": "cmsmciciface",
    "Hidden": "nocmciciface"
}
@var    text        cmcicifaceurl       "Custom Cici face URL"                  '"https://gitlab.com/breatfr/cici/-/raw/main/docs/cici-icon.png"'
@var    text        cmciciavatarcorner  "Custom Cici avatar corner"             22%
@var    text        fontsize            "Custom font size"                      1.2rem
@var    checkbox    chatmode            "Chat mode (Require Our avatar URL)"    0
@var    text        ouravatarurl        "Our avatar URL (Require Chat mode)"    '"https://pbs.twimg.com/profile_images/1676568728585007105/9DebaQOc_400x400.jpg"'
@var    checkbox    darkmode            "Dark mode"                             1
@var    checkbox    hidedownload        "Hide download app"                     0
@var    checkbox    widemode            "Wide mode"                             1
==/UserStyle== */

/* === Credits ===
Website         https://breat.fr
facebook        https://www.facebook.com/breatfroff
mastodon        https://mastodon.social/@breat_fr
telegram        https://t.me/breatfr
vk              https://vk.com/breatfroff
X (twitter)     https://x.com/breatfroff
=== Credits === */

@-moz-document url-prefix("https://www.cici.com/chat/") {
/* ========================================================
    Chat
======================================================== */
    /* Versions */
    :root {
        --themeversion: 'Theme v1.0.12 · ';
        --scriptversion: 'Script v1.0.2 ';
        --author: 'by BreatFR (https://breat.fr)';
        --install1: ' usercssjs.breat.fr \A';
        --install2: ' gitlab.com/breatfr/cici \A \A';
        --support1: ' ko-fi.com/breatfr \A';
        --support2: ' paypal.me/breat';

        --chat-area-max-width: 100%;
        --self-message-box-max-width: 100%;
        --chat-bg-color: #212121;
        --color-neutral-100: #cbcbcb;
        --dot-flashing-from: #cbcbcb;
        --dot-flashing-to: rgba(203, 203, 203, 0.8);
        --s-color-bg-primary: #2f2f2f;
        --s-color-bg-secondary: #2f2f2f;
        --s-color-bg-tertiary: #171717;
        --s-color-bg-quaternary: #2f2f2f;
        --s-color-bg-trans: #2f2f2f;
        --s-color-bg-trans-primary: rgba(126, 148, 254, 0.2);
        --s-color-brand-primary-default: #7e94fe;
        --s-color-text-primary: #cbcbcb;
        --s-color-text-secondary: #cbcbcb;
        --s-color-text-tertiary: #cbcbcb;
        --s-color-text-quaternary: #cbcbcb;
    }
    
    @media (min-width: 900px) {
        [data-testid="chat_siderbar"]::before {
            background: linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
            content: var(--themeversion) var(--scriptversion) var(--author);
            display: block;
            font-family: Montserrat;
            font-size: 1.2rem;
            left: 50%;
            line-height: 1.5;
            max-width: max-content;
            pointer-events: none;
            position: fixed;
            text-align: center;
            top: .75em;
            transform: translateX(-25%);
            width: 100%;
            white-space: wrap;
        }
    }

    [class*="leftVisible-"] [data-testid="bookmark_entry"]::after {
        background: linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%);
        background-clip: text;
        -webkit-background-clip: text;
        bottom: 1em;
        color: transparent;
        content: 'Install: \A' url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/icon_breat.fr.png") var(--install1) url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/icon_gitlab.png") var(--install2) 'Support me: \A' url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/icon_ko-fi.png") var(--support1) url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/icon_paypal.png") var(--support2);
        display: block;
        font-family: Montserrat;
        font-size: 1rem;
        left: 0;
        line-height: 1.5;
        max-width: 280px;
        pointer-events: none;
        position: fixed;
        text-align: center;
        width: 100%;
        white-space: pre-line;
    }
    
    if (customciciface=="cmlgciciface") {
        [data-testid="guidance_panel"]::before {
            aspect-ratio: 1 / 1;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: cmciciavatarcorner;
            content: "";
            display: inline-block;
            height: 100%;
            margin: auto;
            max-height: 256px;
            min-height: 100px;
            width: auto;
        }
        [data-testid="chat_siderbar"] img[style="width: 36px; height: 36px;"] {
            aspect-ratio: 1 / 1;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: cmciciavatarcorner;
            height: 0;
            padding-left: 36px;
            padding-top: 36px;
            width: 0;
        }
    }
    
    if (customciciface=="cmsmciciface") {
        [data-testid="guidance_panel"] > div:nth-of-type(1) > div::before {
            aspect-ratio: 1 / 1;
            align-self: center;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: cmciciavatarcorner;
            content: "";
            display: inline-block;
            height: 100%;
            margin: auto;
            margin-right: 0.5em;
            max-height: 256px;
            min-height: 100px;            
            width: auto;
        }
        [data-testid="chat_siderbar"] img[style="width: 36px; height: 36px;"] {
            aspect-ratio: 1 / 1;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: cmciciavatarcorner;
            height: 0;
            padding-left: 36px;
            padding-top: 36px;
            width: 0;
        }
        [data-testid="guidance_panel"] > div:nth-of-type(1) > div {
            align-items: center;
        }
    }
    if (customciciface=="nocmciciface") {
        [data-testid="guidance_panel"] > div:nth-of-type(1) > div::before {
            background: none;
            display: none;
        }
    }

    /* Custom font size */
    .skill-bar-button *,
    [class*="type-and-tag-filter-wrapper-"] *,
    [data-testid="bot_discover_recommend_list"] *,
    [data-testid="carousel-item"] *,
    [data-testid="chat_input_input"] *,
    [data-testid="guidance_groups_skill_card"] *,
    [data-testid="union_message"] *,
    input,
    textarea,
    ::placeholder {
        font-size: fontsize !important;
        line-height: 1.5 !important;
        text-overflow: initial !important;
    }
        
    if chatmode && ouravatarurl {
        [data-testid="send_message"] > div:nth-of-type(1)::before {
            align-self: center;
            aspect-ratio: 1 / 1;
            background: url(ouravatarurl) no-repeat center center / cover;
            border-radius: 50%;
            content: "";
            display: inline-flex;
            height: 40px;
            margin-bottom: auto;
            margin-left: .5em;
            width: 40px;
        }
        
        [data-testid="receive_message"] > div:nth-of-type(1)::before {
            align-self: center;
            aspect-ratio: 1 / 1;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: 50%;
            content: "";
            display: inline-flex;
            height: 40px;
            margin-bottom: auto;
            margin-right: .5em;
            width: 40px;
        }
    }
    
    if darkmode {
        [data-testid="chat_siderbar"] {
            border-right: 1px solid #7e94fe !important;
        }
        [class*="send-message-box-content-"],
        [class*="send-message-box-content-coco-"] {
            background: rgba(50, 50, 50, 0.85);
            border-radius: 1.5rem;
        }
        
        body {
            color: var(--s-color-text-primary);
        }

        [class*="chat-input-container"] {
            box-shadow: rgba(126, 148, 254, 0.2) -2px -2px 2px 2px,
                        rgba(126, 148, 254, 0.2) -2px 2px 2px 2px,
                        rgba(0, 87, 255, 0.2) 2px -2px 2px 2px,
                        rgba(0, 87, 255, 0.2) 2px 2px 2px 2px;
        }
        [data-testid="create_conversation_button"] svg path,
        svg[class*="short-cut-"] path,
        svg[class*="short-cut-"] rect {
            stroke: #7e94fe;
        }
        [data-testid="scroll_view"] svg path {
            stroke: var(--s-color-text-primary);
        }
        .semi-space svg path {
            fill: var(--s-color-text-primary);
        }
        
        [class*="thread-creation-"] {
            color: var(--s-color-brand-primary-default, #7e94fe);
        }
        
        [class*="chat-input-"],
        [class*="semi-input-textarea-wrapper"],
        [data-testid="chat_input_input"] {
            background: var(--s-color-bg-primary) !important;
            border: 0 !important;
            border-radius: 12px !important;
        }
        [data-testid="chat_input_send_button"]:disabled {
            background-color: grey;
        }
        
        [class*="section-item-"]:not([class*="active-"], [class*="section-item-title-"]):hover,
        [data-testid="guidance_groups"] > div:hover,
        .skill-bar-button > div:hover {
            background: var(--s-color-bg-trans-primary) !important;
        }
        
        [class*="to-bottom-button-"] {
            background: var(--s-color-bg-tertiary);
        }
        
        ::selection {
            background: --s-color-bg-trans-primary;
        }
        
        /* Dots when Cici is writing */
        [data-testid="message_loading"] [class*="dot-flashing-"],
        [data-testid="message_loading"] [class*="dot-flashing-"]::after,
        [data-testid="message_loading"] [class*="dot-flashing-"]::before {
            background-color: transparent !important;
            color: rgba(203, 203, 203, 0.8) !important;
        }
        
        [class*="header-P"] {
            background: transparent;
        }
    }
    
    if hidedownload {
        [data-testid="chat_header_download_client"],
        [data-testid="chat_header_menu"] > div:nth-of-type(1),
        [data-testid="chat_header_menu"] > button:nth-of-type(1),
        [data-testid="chat_header_menu"] > button:nth-of-type(2),
        [data-testid="chat_header_menu"] > button:nth-of-type(3),
        [data-testid="chat_siderbar"] > div > div:last-child > [data-testid="sidebar_download_desktop_btn"],
        [data-testid="chat_siderbar"] > div > div:last-child > div > div:nth-of-type(2) > div,
        [data-testid="login_content"] > div > div > div:nth-of-type(1) {
            display: none;
        }
    }

    if widemode {
        /* Wide chat */
        [style*="--right-side-width: 0px; --center-content-max-width:"] {
            --center-content-max-width: 100% !important;
        }
        
        /* Cici's face on home page */
        @media (max-width: 600px) {
            [class*="guidance-view-layout-"] {
                display: flex;
                flex-direction: column;
                height: calc(100vh - 216px);
                justify-content: center;
                padding: 10px 0;
            }
        }
        
        /* Full code block */
        [class*="code-block-element-"] [class*="code-area-"] [class*="content-"] {
            max-height: fit-content !important;
        }
        [class*="code-block-element-"] [class*="code-area-"] [class*="mask-"] {
            background: transparent !important;
        }
        
        /* Full attachment file name */
        [data-testid="attachment_file_item"] {
            min-width: 50% !important;
        }
        
        /* Images sent by us */
        [data-testid="message_content"] [class*="container-"] {
            margin-left: auto;
        }
        [data-testid="mdbox_image"] {
            border: 1px solid #7e94fe !important;
            border-radius: 12px;
        }
        
        /* Chat "bubbles" */
        [class*="message-box__reverse-"] {
            margin-left: auto;
        }
        [class*="send-message-"] {
            display: flex;
            justify-content: flex-end;
            margin-left: auto;
            max-width: 100%;
        }
        [data-testid="send_message"] [data-testid="message_content"] > div > [data-testid="message_text_content"] {
            padding-bottom: 0.625rem !important;
            padding-left: 1.25rem !important;
            padding-right: 1.25rem !important;
            padding-top: 0.625rem !important;
        }
        [data-testid="send_message"],
        [data-testid="receive_message"] {
            max-width: 80%;
            min-width: 80%;
            width: 100%;
        }
        
        /* Avatar */
        .semi-avatar img {
            background-color: transparent !important;
        }
        [data-testid="chat_header_avatar_button"] {
            height: 36px !important;
            width: 36px !important;
        }
        
        /* Help and comments */
        [data-testid="feedback_modal"] > div:nth-of-type(2) > div {
            width: 80% !important;
        }
    }
}

@-moz-document url-prefix("https://www.cici.com/chat/bot/discover") {
/* ========================================================
    Bots
======================================================== */
    if darkmode {
        [class*="containerWrapper"] [class*="panelWrapper"] {
            background: var(--chat-bg-color);
        }

        [data-testid="bot_discover_search"] > div {
            background: var(--s-color-bg-secondary) !important;
        }
        
        [class*="newBotItem-"]:hover {
            background: var(--s-color-bg-trans-primary)
        }
    }
    
    if widemode {
        [class*="newBotItem-"] {
            height: auto;
            max-width: 100%;
        }
    }
}

@-moz-document url-prefix("https://www.cici.com/chat/create-image") {
/* ========================================================
    Images
======================================================== */
    if darkmode {
        [class*="max-width-layout__full-width-"],
        .bg-white {
            background: var(--chat-bg-color) !important;
        }
    }
}

@-moz-document url-prefix("https://www.cici.com/chat/collection") {
/* ========================================================
    Bookmarks
======================================================== */
    if darkmode {
        .collection-guide-popup-container,
        .collection-guide-popup-container div[data-testid="scroll_view"] {
            background: var(--chat-bg-color);
        }
        
        [data-testid="scroll_view"] div[class*="wrapper-"] > div:nth-of-type(2) > div > div:nth-of-type(1)::after {
            background: transparent;
        }
    }
    
    if widemode {
        [class*="type-and-tag-filter-wrapper-"] {
            margin-top: 3em;
        }
        
        [data-testid="scroll_view"],
        [data-testid="scroll_view"] > div {
            margin-top: 1em;
        }
    }
}

@-moz-document url-prefix("https://www.cici.com/chat/settings") {
/* ========================================================
    Settings
======================================================== */
    :root {
        --s-color-bg-trans: #2f2f2f;
        --s-color-bg-trans-primary: rgba(126, 148, 254, 0.2);
        --s-color-bg-primary: #212121;
        --s-color-text-primary: #cbcbcb;
        --s-color-text-secondary: #cbcbcb;
        --s-color-text-tertiary: #cbcbcb;
        --s-color-text-quaternary: #cbcbcb;
        --semi-color-text-0: #cbcbcb;
    }
    
    a {
        color: #cbcbcb;
    }
    .semi-dropdown-content {
        background: var(--s-color-bg-primary);
    }
    
    /* Custom font size */
    [class*="block-"] *,
    li * {
        font-size: fontsize !important;
        line-height: 1.5 !important;
        text-overflow: initial !important;
    }
    
    /* Dropdown language */
    .flow-dropdown-container > div > div {
        align-items: center;
        height: auto;
    }
    .semi-portal-inner {
        transform: translate(-67%, 0%) !important;
    }
    
    [data-testid="dropdown-menu-item"] p {
        display: inline-flex;
    }
    [data-testid="dropdown-menu-item"]:not(:first-child) p:nth-of-type(2)::before {
        content: "/";
        margin-left: .3em;
        margin-right: .3em;
    }
}

@-moz-document url-prefix("http://"), url-prefix("https://") {
/* ========================================================
    Browser plugin
======================================================== */
    /* Translated by Cici */
    if (customciciface=="cmlgciciface") || (customciciface=="cmsmciciface") {
        .__Cici_translate_translated_inject_node__:before {
            aspect-ratio: 1 / 1;
            background: url(cmcicifaceurl) no-repeat center center / cover;
            border-radius: cmciciavatarcorner;
            content: "";
            display: inline-block;
            height: 1em;
            margin: auto;
            margin-right: .25em;
            vertical-align: text-top;
            width: 1em;
        }
    }
    if (customciciface=="nocmciciface") {
        .__Cici_translate_translated_inject_node__:before {
            background: none;
            display: none;
        }
    }
    .__Cici_translate_translated_inject_node__ {
        box-shadow: rgba(126, 148, 254, 0.2) -2px -2px 2px 2px,
                    rgba(126, 148, 254, 0.2) -2px 2px 2px 2px,
                    rgba(0, 87, 255, 0.2) 2px -2px 2px 2px,
                    rgba(0, 87, 255, 0.2) 2px 2px 2px 2px;
        border-radius: 12px;
        padding: .25em;
        width: fit-content;
    }
}