text-generation-webui/css/main.css

729 lines
14 KiB
CSS
Raw Normal View History

2023-03-15 16:33:26 +01:00
.tabs.svelte-710i53 {
margin-top: 0
}
2023-03-17 01:31:39 +01:00
2023-03-15 16:33:26 +01:00
.py-6 {
padding-top: 2.5rem
}
2023-03-17 01:31:39 +01:00
.small-button {
2023-08-14 03:45:13 +02:00
min-width: 0 !important;
max-width: 171px;
height: 39.594px;
align-self: end;
}
.refresh-button {
max-width: 4.4em;
min-width: 2.2em !important;
height: 39.594px;
align-self: end;
line-height: 1em;
border-radius: 0.5em;
flex: none;
2023-03-15 16:33:26 +01:00
}
2023-03-17 01:31:39 +01:00
.refresh-button-small {
max-width: 2.2em;
}
.button_nowrap {
white-space: nowrap;
}
#slim-column {
flex: none !important;
min-width: 0 !important;
}
.slim-dropdown {
background-color: transparent !important;
border: none !important;
padding: 0 !important;
2023-03-15 16:33:26 +01:00
}
2023-03-17 01:31:39 +01:00
2023-03-15 16:33:26 +01:00
#download-label, #upload-label {
2023-05-25 18:12:34 +02:00
min-height: 0
2023-03-15 16:33:26 +01:00
}
2023-03-17 01:31:39 +01:00
2023-03-15 16:33:26 +01:00
.dark svg {
2023-05-25 18:12:34 +02:00
fill: white;
2023-03-15 16:33:26 +01:00
}
2023-03-17 01:31:39 +01:00
2023-03-18 00:19:04 +01:00
.dark a {
2023-05-25 18:12:34 +02:00
color: white !important;
2023-03-18 00:19:04 +01:00
}
2023-03-15 16:33:26 +01:00
ol li p, ul li p {
display: inline-block;
}
2023-03-17 01:31:39 +01:00
2023-08-13 06:12:15 +02:00
#chat-tab, #default-tab, #notebook-tab, #parameters, #chat-settings, #lora, #training-tab, #model-tab, #session-tab {
2023-05-25 18:12:34 +02:00
border: 0;
2023-03-15 16:33:26 +01:00
}
2023-03-23 04:13:34 +01:00
.gradio-container-3-18-0 .prose * h1, h2, h3, h4 {
2023-05-25 18:12:34 +02:00
color: white;
2023-03-23 04:13:34 +01:00
}
2023-03-27 03:20:30 +02:00
.gradio-container {
2023-05-25 18:12:34 +02:00
max-width: 100% !important;
padding-top: 0 !important;
2023-03-27 03:20:30 +02:00
}
#extensions {
2023-08-30 01:15:12 +02:00
margin-top: 5px;
2023-05-25 18:12:34 +02:00
margin-bottom: 35px;
2023-03-27 03:20:30 +02:00
}
2023-03-27 17:59:07 +02:00
2023-05-17 06:25:01 +02:00
.extension-tab {
2023-05-25 18:12:34 +02:00
border: 0 !important;
2023-05-17 06:25:01 +02:00
}
2023-03-27 17:59:07 +02:00
span.math.inline {
2023-05-25 18:12:34 +02:00
font-size: 27px;
vertical-align: baseline !important;
2023-03-27 17:59:07 +02:00
}
2023-04-04 23:30:34 +02:00
div.svelte-15lo0d8 > *, div.svelte-15lo0d8 > .form > * {
2023-05-25 18:12:34 +02:00
flex-wrap: nowrap;
}
2023-04-10 21:15:16 +02:00
.header_bar {
2023-05-25 18:12:34 +02:00
background-color: #f7f7f7;
2023-12-20 01:24:34 +01:00
box-shadow: 0 2px 3px rgba(22 22 22 / 35%);
2023-12-27 18:59:23 +01:00
margin-bottom: 0;
overflow-x: scroll;
2023-09-15 17:06:17 +02:00
margin-left: calc(-1 * var(--size-4));
margin-right: calc(-1 * var(--size-4));
2023-10-11 03:20:49 +02:00
display: block !important;
text-wrap: nowrap;
2023-12-20 01:24:34 +01:00
z-index: 90;
2023-04-10 21:15:16 +02:00
}
.dark .header_bar {
2023-05-25 18:12:34 +02:00
border: none !important;
2023-12-20 01:24:34 +01:00
box-shadow: 0 3px 4px rgba(20 20 20 / 60%);
2023-05-25 18:12:34 +02:00
background-color: #8080802b;
2023-04-10 21:15:16 +02:00
}
2023-04-19 04:36:23 +02:00
.header_bar button.selected {
border-radius: 0;
}
2023-04-19 04:36:23 +02:00
.textbox_default textarea {
2023-09-15 18:10:57 +02:00
height: calc(100dvh - 271px);
2023-04-19 04:36:23 +02:00
}
.textbox_default_output textarea {
2023-09-16 04:41:53 +02:00
height: calc(100dvh - 185px);
2023-04-19 04:36:23 +02:00
}
.textbox textarea {
height: calc(100dvh - 241px);
2023-04-19 04:36:23 +02:00
}
2023-08-21 01:49:21 +02:00
.textbox_logits textarea {
2023-09-16 04:41:53 +02:00
height: calc(100dvh - 236px);
2023-08-21 01:49:21 +02:00
}
.textbox_logits_notebook textarea {
height: calc(100dvh - 292px);
}
2023-09-24 23:11:22 +02:00
.monospace textarea {
2023-09-16 04:30:44 +02:00
font-family: monospace;
}
2023-08-21 01:49:21 +02:00
.textbox_default textarea,
.textbox_default_output textarea,
.textbox_logits textarea,
.textbox_logits_notebook textarea,
2023-09-16 03:51:55 +02:00
.textbox textarea {
2023-05-25 18:12:34 +02:00
font-size: 16px !important;
color: #46464A !important;
2023-04-19 04:36:23 +02:00
}
.dark textarea {
2023-05-25 18:12:34 +02:00
color: #efefef !important;
2023-04-19 04:36:23 +02:00
}
2023-10-20 22:02:18 +02:00
@media screen and (width <= 711px) {
2023-08-13 06:12:15 +02:00
.textbox_default textarea {
2023-09-15 18:10:57 +02:00
height: calc(100dvh - 259px);
}
div .default-token-counter {
2023-09-15 18:10:57 +02:00
top: calc( 0.5 * (100dvh - 236px) ) !important;
2023-08-13 06:12:15 +02:00
}
2023-09-14 12:17:15 +02:00
.transparent-substring {
display: none;
}
.hover-menu {
min-width: 250px !important;
}
2023-08-13 06:12:15 +02:00
}
2023-10-20 22:02:18 +02:00
/* Hide the gradio footer */
2023-04-19 04:36:23 +02:00
footer {
2023-05-25 18:12:34 +02:00
display: none !important;
2023-04-19 04:36:23 +02:00
}
2023-04-19 05:56:24 +02:00
button {
2023-05-25 18:12:34 +02:00
font-size: 14px !important;
2023-04-19 05:56:24 +02:00
}
2023-04-21 07:35:28 +02:00
.file-saver {
2023-10-20 22:02:18 +02:00
position: fixed !important;
height: 100%;
z-index: 1000;
background-color: rgb(0 0 0 / 50%) !important;
margin-left: -20px;
margin-right: -20px;
2023-10-11 03:20:49 +02:00
}
.file-saver > :first-child {
2023-10-20 22:02:18 +02:00
position: fixed !important;
top: 50%;
left: 50%;
transform: translate(-50%, -50%); /* center horizontally */
width: 100%;
max-width: 500px;
background-color: var(--input-background-fill);
border: var(--input-border-width) solid var(--input-border-color) !important;
}
2024-01-09 15:33:47 +01:00
.file-saver > :first-child > :last-child {
2023-10-20 22:02:18 +02:00
background: var(--block-background-fill);
2024-01-09 15:33:47 +01:00
justify-content: flex-end;
2023-06-11 20:29:45 +02:00
}
.checkboxgroup-table label {
background: none !important;
padding: 0 !important;
border: 0 !important;
}
.checkboxgroup-table div {
display: grid !important;
}
.markdown ul ol {
font-size: 100% !important;
}
.pretty_scrollbar::-webkit-scrollbar {
2023-10-20 22:02:18 +02:00
width: 5px;
}
.pretty_scrollbar::-webkit-scrollbar-track {
2023-10-20 22:02:18 +02:00
background: transparent;
}
.pretty_scrollbar::-webkit-scrollbar-thumb,
.pretty_scrollbar::-webkit-scrollbar-thumb:hover {
2023-10-20 22:02:18 +02:00
background: #c5c5d2;
}
.dark .pretty_scrollbar::-webkit-scrollbar-thumb,
.dark .pretty_scrollbar::-webkit-scrollbar-thumb:hover {
2023-10-20 22:02:18 +02:00
background: #374151;
}
.pretty_scrollbar::-webkit-resizer {
2023-10-20 22:02:18 +02:00
background: #c5c5d2;
}
.dark .pretty_scrollbar::-webkit-resizer {
2023-10-20 22:02:18 +02:00
background: #374151;
}
2023-08-13 06:12:15 +02:00
2023-08-16 18:35:10 +02:00
audio {
2023-10-20 22:02:18 +02:00
max-width: 100%;
2023-08-16 18:35:10 +02:00
}
/* Copied from https://github.com/AUTOMATIC1111/stable-diffusion-webui */
.token-counter {
2023-10-20 22:02:18 +02:00
position: absolute !important;
top: calc( 0.5 * (100dvh - 218px) ) !important;
right: 2px;
z-index: 100;
background: var(--input-background-fill) !important;
min-height: 0 !important;
}
.default-token-counter {
2023-10-20 22:02:18 +02:00
top: calc( 0.5 * (100dvh - 248px) ) !important;
}
.token-counter span {
2023-10-20 22:02:18 +02:00
padding: 1px;
box-shadow: 0 0 0 0.3em rgb(192 192 192 / 15%), inset 0 0 0.6em rgb(192 192 192 / 7.5%);
border: 2px solid rgb(192 192 192 / 40%) !important;
border-radius: 0.4em;
}
.no-background {
2023-10-20 22:02:18 +02:00
background: var(--background-fill-primary) !important;
padding: 0 !important;
}
2023-10-20 22:02:18 +02:00
/* ----------------------------------------------
Chat tab
2023-10-20 22:02:18 +02:00
---------------------------------------------- */
2023-08-13 06:12:15 +02:00
.h-\[40vh\], .wrap.svelte-byatnx.svelte-byatnx.svelte-byatnx {
height: 66.67vh
}
.gradio-container {
margin-left: auto !important;
margin-right: auto !important;
}
.w-screen {
width: unset
}
div.svelte-362y77>*, div.svelte-362y77>.form>* {
flex-wrap: nowrap
}
.pending.svelte-1ed2p3z {
opacity: 1;
}
.wrap.svelte-6roggh.svelte-6roggh {
max-height: 92.5%;
}
/* This is for the microphone button in the whisper extension */
.sm.svelte-1ipelgc {
width: 100%;
}
2023-12-19 23:27:11 +01:00
#chat-tab {
2023-12-27 18:59:23 +01:00
padding-top: 0;
2023-12-19 23:27:11 +01:00
}
2023-09-14 14:16:44 +02:00
#chat-tab button#Generate, #chat-tab button#stop {
width: 89.3438px !important;
}
2023-08-13 06:12:15 +02:00
#chat-tab button, #notebook-tab button, #default-tab button {
min-width: 0 !important;
}
#chat-tab > :first-child, #extensions {
2023-09-12 19:26:43 +02:00
max-width: 880px;
2023-08-13 06:12:15 +02:00
margin-left: auto;
margin-right: auto;
}
2023-10-20 22:02:18 +02:00
@media screen and (width <= 688px) {
2023-08-13 06:12:15 +02:00
#chat-tab {
2023-10-20 22:02:18 +02:00
padding-left: 0;
padding-right: 0;
2023-08-13 06:12:15 +02:00
}
}
.chat {
margin-left: auto;
margin-right: auto;
2023-09-12 19:26:43 +02:00
max-width: 880px;
2023-12-25 17:32:02 +01:00
min-height: var(--chat-height);
2023-08-13 06:12:15 +02:00
overflow-y: auto;
padding-right: 15px;
2023-08-13 06:12:15 +02:00
display: flex;
2023-08-17 06:03:40 +02:00
flex-direction: column;
2023-08-13 06:12:15 +02:00
word-break: break-word;
overflow-wrap: anywhere;
2023-12-21 05:00:56 +01:00
border-top: none;
2023-12-25 23:17:00 +01:00
border-radius: 0 0 0 8px;
visibility: visible;
2023-08-13 06:12:15 +02:00
}
.chat-parent {
2023-12-25 23:10:07 +01:00
height: calc(100dvh - 98px - var(--header-height) - var(--input-delta));
overflow: auto !important;
2023-12-25 23:17:00 +01:00
border-radius: 0 !important;
2023-12-25 23:10:07 +01:00
margin-bottom: var(--input-delta) !important;
}
/* On desktop, automatically hide the chat scroll bar
* when not hovered. */
@media (hover: hover) and (pointer: fine) {
.chat-parent {
visibility: hidden;
}
.chat-parent:focus, .chat-parent:hover {
visibility: visible;
}
}
.old-ui .chat-parent {
2023-12-25 23:10:07 +01:00
height: calc(100dvh - 192px - var(--header-height) - var(--input-delta));
margin-bottom: var(--input-delta) !important;
}
.chat-parent.bigchat {
2023-12-25 23:10:07 +01:00
height: calc(100dvh - 98px - var(--header-height) - var(--input-delta)) !important;
margin-bottom: var(--input-delta) !important;
}
2023-08-13 06:12:15 +02:00
.chat > .messages {
display: flex;
flex-direction: column;
2023-12-25 23:25:31 +01:00
padding-top: 25px;
2023-08-13 06:12:15 +02:00
}
.chat .message:last-child {
2023-10-20 22:02:18 +02:00
margin-bottom: 0 !important;
padding-bottom: 0 !important;
}
2023-12-18 05:26:57 +01:00
.message-body li {
list-style-position: outside;
}
.chat .message-body ul, .chat .message-body ol {
padding-inline-start: 2em;
}
2023-10-20 21:30:01 +02:00
.message-body li:not(:last-child) {
2023-08-29 05:14:02 +02:00
margin-top: 0 !important;
2023-10-20 21:30:01 +02:00
margin-bottom: 2px !important;
}
.message-body li:last-child {
2023-10-20 22:02:18 +02:00
margin-bottom: 0 !important;
2023-08-13 06:12:15 +02:00
}
.message-body li > p {
display: inline !important;
}
.message-body ul, .message-body ol {
font-size: 15px !important;
}
.message-body ul {
list-style-type: disc !important;
}
2023-10-11 21:18:46 +02:00
.message-body pre:not(:last-child) {
2023-10-20 21:30:01 +02:00
margin-bottom: 35.625px !important;
2023-08-13 06:12:15 +02:00
}
2023-10-11 21:18:46 +02:00
.message-body pre:last-child {
2023-10-20 22:02:18 +02:00
margin-bottom: 0 !important;
2023-10-11 21:18:46 +02:00
}
#default-tab .prose pre, #notebook-tab .prose pre {
overflow: scroll;
}
2023-08-13 06:12:15 +02:00
.message-body code {
white-space: pre-wrap !important;
word-wrap: break-word !important;
2023-10-11 21:18:46 +02:00
border: 1px solid var(--border-color-primary);
border-radius: var(--radius-sm);
background: var(--background-fill-secondary);
2023-10-20 21:30:01 +02:00
font-size: 90%;
2023-10-11 21:18:46 +02:00
padding: 1px 3px;
}
.message-body pre > code {
display: block;
2023-10-20 21:30:01 +02:00
padding: 15px;
2023-08-13 06:12:15 +02:00
}
.message-body :not(pre) > code {
white-space: normal !important;
}
#chat-input {
padding: 0;
padding-top: 18px;
background: transparent;
border: none;
}
#chat-input textarea:focus {
box-shadow: none !important;
}
2023-10-11 03:20:49 +02:00
#chat-input > :first-child {
background-color: transparent;
}
#chat-input .progress-text {
display: none;
}
2023-08-13 06:12:15 +02:00
@media print {
body {
visibility: hidden;
}
.chat {
visibility: visible;
position: absolute;
left: 0;
top: 0;
2023-08-18 06:44:22 +02:00
max-width: unset;
max-height: unset;
2023-08-13 06:12:15 +02:00
width: 100%;
2023-08-18 06:44:22 +02:00
overflow-y: visible;
2023-08-13 06:12:15 +02:00
}
.message {
break-inside: avoid;
}
.gradio-container {
overflow: visible;
}
.tab-nav {
display: none !important;
}
2023-08-18 06:44:22 +02:00
#chat-tab > :first-child {
max-width: unset;
}
2023-08-13 06:12:15 +02:00
}
#show-controls {
position: absolute;
2023-09-14 14:32:44 +02:00
height: 100%;
background-color: var(--background-fill-primary);
2023-10-20 22:02:18 +02:00
border: 0 !important;
border-radius: 0;
2023-09-15 07:03:59 +02:00
}
#show-controls label {
z-index: 1000;
2023-09-15 07:03:59 +02:00
position: absolute;
right: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
#show-controls span {
opacity: 0.6;
}
#typing-container {
display: none;
position: absolute;
background-color: transparent;
left: -2px;
padding: var(--block-padding);
}
.typing {
2023-10-20 22:02:18 +02:00
position: relative;
}
.visible-dots #typing-container {
display: block;
}
.typing span {
2023-10-20 22:02:18 +02:00
content: '';
animation: blink 1.5s infinite;
animation-fill-mode: both;
height: 10px;
width: 10px;
background: #3b5998;;
position: absolute;
left:0;
top:0;
border-radius: 50%;
}
.typing .dot1 {
2023-10-20 22:02:18 +02:00
animation-delay: .2s;
margin-left: calc(10px * 1.5);
}
.typing .dot2 {
2023-10-20 22:02:18 +02:00
animation-delay: .4s;
margin-left: calc(10px * 3);
}
@keyframes blink {
2023-10-20 22:02:18 +02:00
0% {
opacity: .1;
}
20% {
opacity: 1;
}
100% {
opacity: .1;
}
}
#chat-tab .generating {
2023-10-20 22:02:18 +02:00
display: none !important;
}
2023-09-13 07:36:12 +02:00
.hover-element {
2023-10-20 22:02:18 +02:00
position: relative;
font-size: 24px;
2023-09-13 07:36:12 +02:00
}
.hover-menu {
2023-10-20 22:02:18 +02:00
display: none;
position: absolute;
bottom: 80%;
left: 0;
background-color: var(--background-fill-secondary);
box-shadow: 0 0 10px rgb(0 0 0 / 50%);
z-index: 10000;
min-width: 330px;
flex-direction: column;
2023-09-13 07:36:12 +02:00
}
.hover-menu button {
2023-10-20 22:02:18 +02:00
width: 100%;
background: transparent !important;
border-radius: 0 !important;
justify-content: space-between;
margin: 0 !important;
height: 36px;
2023-09-14 16:20:36 +02:00
}
.hover-menu button:not(#clear-history-confirm) {
2023-10-20 22:02:18 +02:00
border-bottom: 0 !important;
2023-09-14 16:09:06 +02:00
}
2023-09-14 16:20:36 +02:00
.hover-menu button:not(#clear-history-confirm):last-child {
2023-10-20 22:02:18 +02:00
border-bottom: var(--button-border-width) solid var(--button-secondary-border-color) !important;
2023-09-13 07:36:12 +02:00
}
.hover-menu button:hover {
2023-10-20 22:02:18 +02:00
background: var(--button-secondary-background-fill-hover) !important;
2023-09-13 07:36:12 +02:00
}
2023-09-14 04:21:39 +02:00
.transparent-substring {
2023-10-20 22:02:18 +02:00
opacity: 0.333;
2023-09-14 04:21:39 +02:00
}
#chat-tab:not(.old-ui) #chat-buttons {
display: none !important;
}
#gr-hover-container {
2023-10-20 22:02:18 +02:00
min-width: 0 !important;
display: flex;
flex-direction: column-reverse;
padding-right: 20px;
padding-bottom: 3px;
flex-grow: 0 !important;
}
#generate-stop-container {
2023-10-20 22:02:18 +02:00
min-width: 0 !important;
display: flex;
flex-direction: column-reverse;
padding-bottom: 3px;
flex: 0 auto !important;
}
#chat-input-container {
2023-10-20 22:02:18 +02:00
min-width: 0 !important;
}
#chat-input-container > .form {
2023-10-20 22:02:18 +02:00
background: transparent;
border: none;
}
#chat-input-row {
2023-10-20 22:02:18 +02:00
padding-bottom: 20px;
}
.old-ui #chat-input-row, #chat-input-row.bigchat {
2023-10-20 22:02:18 +02:00
padding-bottom: 0 !important;
}
#chat-col {
2023-12-21 05:42:06 +01:00
padding-bottom: 100px;
}
.old-ui #chat-col, #chat-col.bigchat {
2023-12-21 05:42:06 +01:00
padding-bottom: 80px !important;
}
.old-ui #chat-buttons #clear-history-confirm {
order: -1;
}
2023-09-21 23:30:52 +02:00
.chat ol, .chat ul {
margin-top: 6px !important;
}
2023-09-22 03:53:03 +02:00
2023-10-20 22:02:18 +02:00
/* ----------------------------------------------
Past chats menus
2023-10-20 22:02:18 +02:00
---------------------------------------------- */
2023-09-22 03:53:03 +02:00
#rename-row label {
margin-top: var(--layout-gap);
}
/* ----------------------------------------------
Past chat histories in a side bar on desktop
---------------------------------------------- */
@media screen and (width >= 1327px) {
#past-chats-row {
position: absolute;
top: 16px;
left: 0;
width: calc(0.5*(var(--document-width) - 880px - 120px - 16px*2));
max-width: 300px;
margin-left: calc(-0.5*(var(--document-width) - 880px - 14px - 16px * 2));
}
#chat-controls {
position: absolute;
top: 16px;
right: 0;
width: calc(0.5*(var(--document-width) - 880px - 120px - 16px*2));
max-width: 300px;
margin-right: calc(-0.5*(var(--document-width) - 880px - 14px - 16px * 2));
}
}
2023-10-20 22:02:18 +02:00
/* ----------------------------------------------
Keep dropdown menus above errored components
2023-10-20 22:02:18 +02:00
---------------------------------------------- */
.options {
z-index: 100 !important;
}
/* ----------------------------------------------
Big profile picture for characters
---------------------------------------------- */
.bigProfilePicture {
position: fixed;
bottom: 0;
left: 0;
width: calc((100vw - 880px - 120px) /2);
}
2023-11-19 15:53:41 +01:00
.pfp_character:hover {
cursor: pointer;
}
@media screen and (width <= 1300px) {
.bigProfilePicture {
display: none;
}
}