您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Kindroid mobile website is more customizable (theme) + add new features (scripts).
当前为
/* ==UserStyle== @name Kindroid mobile customizations v1.xx @description Kindroid mobile website is more customizable (theme) + add new features (scripts). @version 1.0.3 @author BreatFR (https://breat.fr) @namespace https://gitlab.com/breatfr @homepageURL https://gitlab.com/breatfr/kindroid @supportURL https://discord.gg/fSgDHmekfG @license BY-NC-ND; https://creativecommons.org/licenses/by-nc-nd/4.0/ @preprocessor stylus @var select actionsstyle "Actions texts style" { "Default": "actionsdefault", "Asterisks": "asterisks", "Asterisks + bold": "asterisksbold", "Asterisks + bold + no italic": "asterisksboldnoitalic", "Bold": "bold", "Bold + no italic": "boldnoitalic", "No italic": "noitalic" } @var color actionscolor "Actions texts color choice" rgb(136, 136, 136) @var checkbox avatarchoice "Avatar changer" 0 @var text avatarchoiceurl "Avatar changer URL" "URL between quotes" @var checkbox avatarcircle "Avatar circle" 0 @var select bgchoice "Background choice" { "❤️ Hearts": "heartbg", "⬜ None": "nobg", "❔ Custom": "custombg" } @var color bgcolor "Background color" #101010 @var text custombgurl "Background URL" "URL between quotes" @var checkbox blurcontent "Blur content" 0 @var color bubblescolor "Bubbles font color" #CBCBCB @var text fontsize "Custom font size" 1.2rem @var checkbox gradientregenerate "Gradient regenerate icon" 1 @var checkbox hidenames "Hide names in bubbles" 1 @var checkbox manuallyedited "Manually edited" 1 @var color kinbubblesbgcolor "Kin bubbles background color" rgb(33, 27, 25) @var text kinbubblesbgurl "Kin bubbles background URL" "URL between quotes" @var color ourbubblesbgcolor "Our bubbles background color" rgb(27, 28, 30) @var text ourbubblesbgurl "Our bubbles background URL" "URL between quotes" @var checkbox hidetrialbar "Hide trial bar" 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 domain("kindroid.ai") { /* =================================================================================================================================== Whole kindroid domain =================================================================================================================================== */ /* Loading bar */ #nprogress .bar { background: linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); background: -moz-linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); } /* Actions texts */ if (actionsstyle=="actionsdefault") || actionscolor { .css-1cki8gt > span, .css-1joa3p8 > span { color: actionscolor !important; } } if (actionsstyle=="asterisks") { .css-1cki8gt > span:before, .css-1cki8gt > span:after, .css-1joa3p8 > span:before, .css-1joa3p8 > span:after { content: "*" !important; } } if (actionsstyle=="asterisksbold") { .css-1cki8gt > span:before, .css-1cki8gt > span:after, .css-1joa3p8 > span:before, .css-1joa3p8 > span:after { content: "*" !important; } .css-1cki8gt > span, .css-1joa3p8 > span { font-weight: bold !important; } } if (actionsstyle=="asterisksboldnoitalic") { .css-1cki8gt > span:before, .css-1cki8gt > span:after, .css-1joa3p8 > span:before, .css-1joa3p8 > span:after { content: "*" !important; } .css-1cki8gt > span, .css-1joa3p8 > span { font-style: normal !important; font-weight: bold !important; } } /* if (actionsstyle=="asterisksboldsamecolor") { .css-1cki8gt > span:before, .css-1cki8gt > span:after, .css-1joa3p8 > span:before, .css-1joa3p8 > span:after { content: "*" !important; } .css-1cki8gt > span, .css-1joa3p8 > span { color: var(--chakra-colors-secondaryWhite) !important; font-weight: bold !important; } } if (actionsstyle=="asterisksboldnoitalicsamecolor") { .css-1cki8gt > span:before, .css-1cki8gt > span:after, .css-1joa3p8 > span:before, .css-1joa3p8 > span:after { content: "*" !important; } .css-1cki8gt > span, .css-1joa3p8 > span { color: var(--chakra-colors-secondaryWhite) !important; font-style: normal !important; font-weight: bold !important; } } */ if (actionsstyle=="bold") { .css-1cki8gt > span, .css-1joa3p8 > span { font-weight: bold !important; } } if (actionsstyle=="boldnoitalic") { .css-1cki8gt > span, .css-1joa3p8 > span { font-style: normal !important; font-weight: bold !important; } } /* if (actionsstyle=="boldsamecolor") { .css-1cki8gt > span, .css-1joa3p8 > span { color: var(--chakra-colors-secondaryWhite) !important; font-weight: bold !important; } } if (actionsstyle=="boldnoitalicsamecolor") { .css-1cki8gt > span, .css-1joa3p8 > span { color: var(--chakra-colors-secondaryWhite) !important; font-style: normal !important; font-weight: bold !important; } } */ if (actionsstyle=="noitalic") { .css-1cki8gt > span, .css-1joa3p8 > span { font-style: normal !important; } } /* if (actionsstyle=="samecolor") { .css-1cki8gt > span, .css-1joa3p8 > span { color: var(--chakra-colors-primaryWhite) !important; } }*/ /* Background */ .css-1yee3lj { height: calc(100% - 45px); } if (bgchoice=="heartbg") { .css-1lbk8wf, .css-1qpmsp4, .css-16qnjy5, .css-uf0eqr { background: url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/heart-pattern.png") bgcolor no-repeat 100% !important; background-size: cover !important; } } if (bgchoice=="nobg") { /* No background */ .css-1lbk8wf, .css-1qpmsp4, .css-16qnjy5, .css-uf0eqr { background: var(--chakra-colors-secondaryBlack) !important; } } if (bgchoice=="custombg") { /* Custom background */ .css-1lbk8wf, .css-1qpmsp4, .css-16qnjy5, .css-uf0eqr { background: url(custombgurl) bgcolor no-repeat 100% !important; background-size: cover !important; } } if bgcolor { .css-1lbk8wf, .css-1qpmsp4, .css-16qnjy5, .css-uf0eqr { background-color: bgcolor; } } } @-moz-document url-prefix("https://kindroid.ai/home") { /* =================================================================================================================================== Chat page =================================================================================================================================== */ /* ======================================================================== Header and menu ======================================================================== */ if hidetrialbar { .css-r1nv3m { display: none; } } /* Put Log out in orange */ .css-yk3l44 > h2:nth-child(3) { color: var(--chakra-colors-orange); } /* Put Biling in yellow */ .css-1fu7n7b > div > p { color: var(--chakra-colors-yellow-400); } /* Put User Guide and Announcements and Terms in blue */ .css-yk3l44 > h2, .css-j7qwjs > div:nth-child(7) > p { color: var(--chakra-colors-blue-400); } /* Put email and timer in white */ .css-1dodils, .css-1g7lxfg { color: var(--chakra-colors-secondaryWhite); margin-top: 10px; } /* Put Upload Photo text in custom avatar in white to be more visible */ .css-1jcj2pk { color: var(--chakra-colors-secondaryWhite); } /* Billing error box */ .css-dixmdy { background-color: #161616; border: 1px solid #6C6C6C; border-radius: 10px; color: var(--chakra-colors-secondaryWhite); } /* Add some arrows when needed */ button > .css-1cfkm3f::after { background-image: url("https://unpkg.com/[email protected]/dist/svg/chevron-down-outline.svg"); background-size: contain; background-repeat: no-repeat; content: ""; display: inline-block; filter: invert(79%) sepia(6%) saturate(37%) hue-rotate(161deg) brightness(92%) contrast(86%); height: 20px; width: 20px; } /* Danger zone: delete account */ .css-yk3l44 { bottom: 150px; } .css-19zv6py { font-weight: 600; font-size: 18px; width: max-content; } /* Removes top right icons in header */ header > div:nth-of-type(2) { display: none !important; } /* =================================================================================================================================== Chat =================================================================================================================================== */ /* Add border to textarea when focus */ textarea:focus { border: 0; border-radius: 32px; box-shadow: 0 0 0 1px rgb(139, 109, 255), 0 0 0 2px rgb(254, 132, 132); } /* Remove the resize icon on textarea on chat page */ textarea:not(:focus), textarea:focus { resize: none; } /* Hide reduce button on avatar */ @media screen and (min-width: 900px) { ion-app > div > div > div > div:nth-of-type(1) > div > div:nth-of-type(1) > div > div { display: none; } } /* Modification of date for our bubbles */ ion-app > .ion-page > .css-ab8yd1 > .css-bvm5am > .css-1yee3lj > .css-zjyen2 > .css-1lbk8wf > .css-1dhayxc > .css-v3ipd1 > .css-70qvj9 > .css-dhnoom { padding-bottom: 5px; } /* Modification of rounded corners for our bubbles */ .css-1dhayxc > div:nth-of-type(2) { border-radius: 20px 8px 20px 20px !important; } /* Modification of rounded corners for AI bubbles */ .css-yhhl9h > div:nth-of-type(1) { border-radius: 8px 20px 20px 20px; } /* Modification of date for AI bubbles */ ion-app > .ion-page > .css-ab8yd1 > .css-bvm5am > .css-1yee3lj > .css-zjyen2 > .css-1lbk8wf > .css-yhhl9h > .css-ip0f2e > .css-70qvj9 > .css-dhnoom { margin-left: 30px; padding-bottom: 5px; } if bubblescolor { .css-1dhayxc > div:nth-of-type(2) > div:nth-of-type(2) > div, .css-yhhl9h > div:nth-of-type(1) > div:nth-of-type(3) > div { color: bubblescolor; } } /* Bigger text in bubbles and textarea */ .css-1dhayxc *, .css-yhhl9h *, .css-dhnoom, textarea { font-size: fontsize !important; line-height: 1.5 !important; } textarea::placeholder { line-height: 1.5 !important; } if kinbubblesbgcolor { ion-app > div > div > div > div:nth-of-type(1) > div > div:nth-of-type(2) > div:nth-of-type(1) > .css-yhhl9h > div:nth-of-type(1) { background-color: kinbubblesbgcolor; } } if kinbubblesbgurl { ion-app > div > div > div > div:nth-of-type(1) > div > div:nth-of-type(2) > div:nth-of-type(1) > .css-yhhl9h > div:nth-of-type(1) { background-color: kinbubblesbgcolor; background-image: url(kinbubblesbgurl); background-size: cover; } } if ourbubblesbgcolor { ion-app > div > div > div > div:nth-of-type(1) > div > div:nth-of-type(2) > div:nth-of-type(1) > .css-1dhayxc > div:nth-of-type(2) { background: ourbubblesbgcolor; } } if ourbubblesbgurl { ion-app > div > div > div > div:nth-of-type(1) > div > div:nth-of-type(2) > div:nth-of-type(1) > .css-1dhayxc > div:nth-of-type(2) { background-color: ourbubblesbgcolor; background-image: url(ourbubblesbgurl); background-size: cover; } } /* Put a not allowed cursor on spinner, microphone icon, play button, picture generating when needed */ .chakra-spinner, .css-zkr1dl, .css-jy2vee, .css-kjafn5 [disabled] + button { cursor: not-allowed; } if gradientregenerate { /* Regenerate icon */ img[alt="regenerate"] { display: none !important; } [aria-label="Regenerate or suggest a change"]:nth-child(1) { background: url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/gradient-regenerate.svg") no-repeat; border-radius: 50%; } } /* Avatar choice */ if avatarchoice { .css-oies6c, .css-1bwrjj6 { height: 0; } .css-13tht1l { background: url(avatarchoiceurl) no-repeat; background-size: cover; max-width: avatarsize; } } if avatarcircle { .css-13tht1l, .css-g2goff { border-radius: 50%; } } if blurcontent { ion-app > div > div > div > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-child(odd) > div:nth-of-type(2) p, ion-app > div > div > div > div:nth-of-type(1) > div:nth-of-type(2) > div:nth-of-type(1) > div:nth-child(even) > div:nth-of-type(1) p { filter: blur(8px); -moz-filter: blur(8px); -webkit-filter: blur(8px); } } /* Hide names in bubbles to save place */ if hidenames { .css-ppua9z, .css-19hb772 { display: none; } .css-127w3cl { margin-left: 0; } } /* Suggest message button */ .css-b9bzmp > div:nth-of-type(1) > div > div > button { top: 50%; transform: translateY(-50%); } /* Manually edited */ if manuallyedited { .css-ip0f2e { position: relative; } .css-yhhl9h > div > p { bottom: 0; position: absolute; right: -7em; &::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: "Manually edited"; justify-content: end; font-size: 14px; visibility: visible; } & { visibility: hidden; } } } } @-moz-document url-prefix("https://kindroid.ai/groupchat/") { /* =================================================================================================================================== Group chat =================================================================================================================================== */ /* Add border to textarea when focus */ textarea:focus { border: 0; border-radius: 32px; box-shadow: 0 0 0 1px rgb(139, 109, 255), 0 0 0 2px rgb(254, 132, 132); } /* Remove the resize icon on textarea on chat page */ textarea:not(:focus), textarea:focus { resize: none; } /* Hide voice counter and reduce button on avatar */ /* Text button */ .css-2bir3m, /* Voice button */ .css-y0ybx5, /* Reduce button */ .css-fk8dne { display: none; } /* Modification of date for our bubbles */ ion-app > .ion-page > .css-ab8yd1 > .css-bvm5am > .css-1qpmsp4 > .css-zjyen2 > .css-i6vm4m > .css-1dhayxc > .css-v3ipd1 > .css-70qvj9 > .css-dhnoom { font-size: fontsize; padding-bottom: 5px; } /* Modification of rounded corners for our bubbles */ .css-1dhayxc > div:nth-of-type(2) { border-radius: 20px 8px 20px 20px !important; } /* Modification of rounded corners for AI bubbles */ .css-yhhl9h > div:nth-of-type(1) { border-radius: 8px 20px 20px 20px; } if bubblescolor { .css-1dhayxc > div:nth-of-type(2) > div:nth-of-type(2) > div, .css-yhhl9h > div:nth-of-type(1) > div:nth-of-type(3) > div { color: bubblescolor; } } /* Bigger text in bubbles and textarea */ .css-1dhayxc *, .css-yhhl9h *, input, textarea { font-size: fontsize !important; line-height: 1.5 !important; } textarea::placeholder { line-height: 1.5 !important; } if kinbubblesbgcolor { ion-app > div > div > div > div > div > div:nth-of-type(2) > .css-yhhl9h > div:nth-of-type(2) { background-color: kinbubblesbgcolor; } } if kinbubblesbgurl { ion-app > div > div > div > div > div > div:nth-of-type(2) > .css-yhhl9h > div:nth-of-type(2) { background-color: kinbubblesbgcolor; background-image: url(kinbubblesbgurl); background-size: cover; } } if ourbubblesbgcolor { ion-app > div > div > div > div > div > div:nth-of-type(2) > .css-1dhayxc > div:nth-of-type(2) { background: ourbubblesbgcolor; } } if ourbubblesbgurl { ion-app > div > div > div > div > div > div:nth-of-type(2) > .css-1dhayxc > div:nth-of-type(2) { background-color: ourbubblesbgcolor; background-image: url(ourbubblesbgurl); background-size: cover; } } /* Put a not allowed cursor on spinner, microphone icon, play button, picture generating when needed */ .chakra-spinner, .css-zkr1dl, .css-jy2vee, .css-kjafn5 [disabled] + button { cursor: not-allowed; } if gradientregenerate { /* Regenerate icon */ .css-1wmt28i [alt="regenerate"] { display: none; } .css-1jby15f > .css-100dd8p > .css-1wmt28i:nth-child(1) { background: url("https://gitlab.com/breatfr/kindroid/-/raw/main/images/gradient-regenerate.svg") no-repeat; border-radius: 50%; } } if blurcontent { .css-1hmzamm, .css-gnnge1, .css-reootw, .css-v3ipd1 > .css-0 > p, .css-ip0f2e > .css-0 > p { filter: blur(8px); -moz-filter: blur(8px); -webkit-filter: blur(8px); } } if hidenames { /* Hide names in bubbles to save place */ .css-ppua9z, .css-19hb772 { display: none; } .css-127w3cl { margin-left: 0; } } /* 3 dots */ .css-1y2ps2x:hover { background: linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); background: -moz-linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); background-clip: text; color: transparent; -moz-background-clip: text; -moz-text-fill-color: transparent; -webkit-background-clip: text; -webkit-text-fill-color: transparent; } /* Suggest message button */ .css-b9bzmp > div:nth-of-type(1) > div > div > button { top: 50%; transform: translateY(-50%); } } @-moz-document url-prefix("https://kindroid.ai/selfies") { /* =================================================================================================================================== Selfies page =================================================================================================================================== */ /* Hide reddit, discord, kindroid logos */ header > div > .css-1rdhwuq { display: none; } /* Load More button */ .css-1m67823 { background: linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); background: -moz-linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); background: -webkit-linear-gradient(88.55deg, rgb(139, 109, 255) 22.43%, rgb(254, 132, 132) 92.28%); border-radius: 56px; color: var(--chakra-colors-pureWhite); font-size: 18px; height: fit-content; padding-bottom: var(--chakra-space-2); padding-top: var(--chakra-space-2); width: 120px; } .css-1m67823:hover { text-decoration: none; } /* Put delete image button in red */ .css-chdrwy > .css-1icfsi7 > .css-r6z5ec > .css-do4s31, .css-chdrwy > .css-1icfsi7 > .css-r6z5ec > .css-do4s31 > .css-94x4at { background: var(--chakra-colors-secondaryBlack); } .css-chdrwy > .css-1icfsi7 > .css-r6z5ec > .css-do4s31 > .css-94x4at > .css-nvswzl { color: var(--chakra-colors-red); } /* Blur content */ if blurcontent { .css-1regj17, .css-pyo214 { filter: blur(50px); -moz-filter: blur(50px); -webkit-filter: blur(50px); } } } @-moz-document url-prefix("https://kindroid.ai/call") { /* =================================================================================================================================== Call page =================================================================================================================================== */ /* Bigger text */ .css-7wdzg1, .css-14mmx5r, .css-1vqt2yh { font-size: 18px; } /* Avatar choice */ if avatarchoice { ion-app > div > div > div > div > div:nth-of-type(2) > div:first-child, ion-app > div > div > div > div > div:nth-of-type(2) > div:first-child > div:nth-of-type(3) { height: 512px !important; margin-top: 5%; width: 512px !important; } [alt="avatar"] { background: url(avatarchoiceurl) border-box; background-size: cover; border-color: rgb(40, 40, 40); border-radius: 50%; border-style: solid; height: 512px; width: 512px; } } /* Removes top right icons in header */ header > div > div:nth-of-type(2) { display: none !important; } }