text-generation-webui/css/main.css

820 lines
15 KiB
CSS
Raw Normal View History

2023-03-15 11:33:26 -04:00
.tabs.svelte-710i53 {
margin-top: 0
}
2023-03-16 20:31:39 -04:00
2023-03-15 11:33:26 -04:00
.py-6 {
padding-top: 2.5rem
}
2023-03-16 20:31:39 -04:00
.small-button {
2023-08-13 21:45:13 -04: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 11:33:26 -04:00
}
2023-03-16 20:31:39 -04: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 11:33:26 -04:00
}
2023-03-16 20:31:39 -04:00
2023-03-15 11:33:26 -04:00
#download-label, #upload-label {
2023-05-25 12:12:34 -04:00
min-height: 0
2023-03-15 11:33:26 -04:00
}
2023-03-16 20:31:39 -04:00
2023-03-15 11:33:26 -04:00
.dark svg {
2023-05-25 12:12:34 -04:00
fill: white;
2023-03-15 11:33:26 -04:00
}
2023-03-16 20:31:39 -04:00
2023-03-17 19:19:04 -04:00
.dark a {
2023-05-25 12:12:34 -04:00
color: white !important;
2023-03-17 19:19:04 -04:00
}
2023-03-15 11:33:26 -04:00
ol li p, ul li p {
display: inline-block;
}
2023-03-16 20:31:39 -04:00
2023-08-13 00:12:15 -04:00
#chat-tab, #default-tab, #notebook-tab, #parameters, #chat-settings, #lora, #training-tab, #model-tab, #session-tab {
2023-05-25 12:12:34 -04:00
border: 0;
2023-03-15 11:33:26 -04:00
}
2023-03-22 23:13:34 -04:00
2023-03-26 21:20:30 -04:00
.gradio-container {
2023-05-25 12:12:34 -04:00
max-width: 100% !important;
padding-top: 0 !important;
2023-03-26 21:20:30 -04:00
}
#extensions {
2023-08-29 19:15:12 -04:00
margin-top: 5px;
2023-05-25 12:12:34 -04:00
margin-bottom: 35px;
2023-03-26 21:20:30 -04:00
}
2023-03-27 11:59:07 -04:00
2023-05-17 00:25:01 -04:00
.extension-tab {
2023-05-25 12:12:34 -04:00
border: 0 !important;
2023-05-17 00:25:01 -04:00
}
2023-03-27 11:59:07 -04:00
span.math.inline {
2023-05-25 12:12:34 -04:00
font-size: 27px;
vertical-align: baseline !important;
2023-03-27 11:59:07 -04:00
}
2023-04-04 17:30:34 -04:00
div.svelte-15lo0d8 > *, div.svelte-15lo0d8 > .form > * {
2023-05-25 12:12:34 -04:00
flex-wrap: nowrap;
}
2023-04-10 15:15:16 -04:00
2024-03-26 15:32:20 -04:00
gradio-app > :first-child {
padding-left: var(--size-4) !important;
padding-right: var(--size-4) !important;
}
2023-04-10 15:15:16 -04:00
.header_bar {
2024-06-27 23:47:42 -04:00
background-color: #f4f4f4;
2024-06-19 20:40:33 -04:00
box-shadow: 0 0 3px rgba(22 22 22 / 35%);
2023-12-27 12:59:23 -05:00
margin-bottom: 0;
overflow-x: scroll;
2023-09-15 11:06:17 -04:00
margin-left: calc(-1 * var(--size-4));
margin-right: calc(-1 * var(--size-4));
2023-10-10 21:20:49 -04:00
display: block !important;
text-wrap: nowrap;
2023-12-19 19:24:34 -05:00
z-index: 90;
2023-04-10 15:15:16 -04:00
}
.dark .header_bar {
2023-05-25 12:12:34 -04:00
border: none !important;
2023-12-19 19:24:34 -05:00
box-shadow: 0 3px 4px rgba(20 20 20 / 60%);
2023-05-25 12:12:34 -04:00
background-color: #8080802b;
2023-04-10 15:15:16 -04:00
}
2023-04-18 22:36:23 -04:00
.header_bar button.selected {
border-radius: 0;
}
2023-04-18 22:36:23 -04:00
.textbox_default textarea {
2023-09-15 12:10:57 -04:00
height: calc(100dvh - 271px);
2023-04-18 22:36:23 -04:00
}
.textbox_default_output textarea {
2023-09-15 22:41:53 -04:00
height: calc(100dvh - 185px);
2023-04-18 22:36:23 -04:00
}
.textbox textarea {
height: calc(100dvh - 241px);
2023-04-18 22:36:23 -04:00
}
2023-08-20 19:49:21 -04:00
.textbox_logits textarea {
2023-09-15 22:41:53 -04:00
height: calc(100dvh - 236px);
2023-08-20 19:49:21 -04:00
}
.textbox_logits_notebook textarea {
height: calc(100dvh - 292px);
}
2023-09-24 17:11:22 -04:00
.monospace textarea {
2023-09-15 22:30:44 -04:00
font-family: monospace;
}
2023-08-20 19:49:21 -04:00
.textbox_default textarea,
.textbox_default_output textarea,
.textbox_logits textarea,
.textbox_logits_notebook textarea,
2023-09-15 21:51:55 -04:00
.textbox textarea {
2023-05-25 12:12:34 -04:00
font-size: 16px !important;
color: #46464A !important;
2023-04-18 22:36:23 -04:00
}
.dark textarea {
2023-05-25 12:12:34 -04:00
color: #efefef !important;
2023-04-18 22:36:23 -04:00
}
2023-10-20 16:02:18 -04:00
@media screen and (width <= 711px) {
2023-08-13 00:12:15 -04:00
.textbox_default textarea {
2023-09-15 12:10:57 -04:00
height: calc(100dvh - 259px);
}
div .default-token-counter {
2023-09-15 12:10:57 -04:00
top: calc( 0.5 * (100dvh - 236px) ) !important;
2023-08-13 00:12:15 -04:00
}
2023-09-14 06:17:15 -04:00
.transparent-substring {
display: none;
}
.hover-menu {
min-width: 250px !important;
}
2023-08-13 00:12:15 -04:00
}
2023-10-20 16:02:18 -04:00
/* Hide the gradio footer */
2023-04-18 22:36:23 -04:00
footer {
2023-05-25 12:12:34 -04:00
display: none !important;
2023-04-18 22:36:23 -04:00
}
2023-04-18 23:56:24 -04:00
button {
2023-05-25 12:12:34 -04:00
font-size: 14px !important;
2023-04-18 23:56:24 -04:00
}
2023-04-21 01:35:28 -04:00
.file-saver {
2023-10-20 16:02:18 -04: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-10 21:20:49 -04:00
}
.file-saver > :first-child {
2023-10-20 16:02:18 -04: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 09:33:47 -05:00
.file-saver > :first-child > :last-child {
2023-10-20 16:02:18 -04:00
background: var(--block-background-fill);
2024-01-09 09:33:47 -05:00
justify-content: flex-end;
2023-06-11 14:29:45 -04: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 {
width: 7px;
2024-06-24 23:07:22 -04:00
height: 7px;
}
.pretty_scrollbar::-webkit-scrollbar-track {
2023-10-20 16:02:18 -04:00
background: transparent;
}
.pretty_scrollbar::-webkit-scrollbar-thumb,
.pretty_scrollbar::-webkit-scrollbar-thumb:hover {
background: var(--neutral-300);
}
.dark .pretty_scrollbar::-webkit-scrollbar-thumb,
.dark .pretty_scrollbar::-webkit-scrollbar-thumb:hover {
background: var(--neutral-700);
}
.pretty_scrollbar::-webkit-resizer {
2023-10-20 16:02:18 -04:00
background: #c5c5d2;
}
.dark .pretty_scrollbar::-webkit-resizer {
2023-10-20 16:02:18 -04:00
background: #374151;
}
2023-08-13 00:12:15 -04:00
2024-06-24 23:07:22 -04:00
.pretty_scrollbar::-webkit-scrollbar-corner {
background: transparent;
}
2023-08-16 12:35:10 -04:00
audio {
2023-10-20 16:02:18 -04:00
max-width: 100%;
2023-08-16 12:35:10 -04:00
}
/* Copied from https://github.com/AUTOMATIC1111/stable-diffusion-webui */
.token-counter {
2023-10-20 16:02:18 -04: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 16:02:18 -04:00
top: calc( 0.5 * (100dvh - 248px) ) !important;
}
.token-counter span {
2023-10-20 16:02:18 -04: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 16:02:18 -04:00
background: var(--background-fill-primary) !important;
padding: 0 !important;
}
2023-10-20 16:02:18 -04:00
/* ----------------------------------------------
Chat tab
2023-10-20 16:02:18 -04:00
---------------------------------------------- */
2023-08-13 00:12:15 -04: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 17:27:11 -05:00
#chat-tab {
2023-12-27 12:59:23 -05:00
padding-top: 0;
2023-12-19 17:27:11 -05:00
}
2023-09-14 08:16:44 -04:00
#chat-tab button#Generate, #chat-tab button#stop {
width: 89.3438px !important;
}
2023-08-13 00:12:15 -04:00
#chat-tab button, #notebook-tab button, #default-tab button {
min-width: 0 !important;
}
#chat-tab > :first-child, #extensions {
2023-09-12 13:26:43 -04:00
max-width: 880px;
2023-08-13 00:12:15 -04:00
margin-left: auto;
margin-right: auto;
}
2023-10-20 16:02:18 -04:00
@media screen and (width <= 688px) {
2023-08-13 00:12:15 -04:00
#chat-tab {
2023-10-20 16:02:18 -04:00
padding-left: 0;
padding-right: 0;
2023-08-13 00:12:15 -04:00
}
.chat {
padding-left: 0;
padding-right: 0;
}
2023-08-13 00:12:15 -04:00
}
.chat {
margin-left: auto;
margin-right: auto;
2023-09-12 13:26:43 -04:00
max-width: 880px;
2023-12-25 11:32:02 -05:00
min-height: var(--chat-height);
2023-08-13 00:12:15 -04:00
overflow-y: auto;
padding-right: 15px;
2023-08-13 00:12:15 -04:00
display: flex;
2023-08-17 00:03:40 -04:00
flex-direction: column;
2023-08-13 00:12:15 -04:00
word-break: break-word;
overflow-wrap: anywhere;
2023-12-20 23:00:56 -05:00
border-top: none;
2023-12-25 17:17:00 -05:00
border-radius: 0 0 0 8px;
visibility: visible;
2023-08-13 00:12:15 -04:00
}
.chat-parent {
2023-12-25 17:10:07 -05:00
height: calc(100dvh - 98px - var(--header-height) - var(--input-delta));
overflow: auto !important;
2023-12-25 17:17:00 -05:00
border-radius: 0 !important;
2023-12-25 17:10:07 -05: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;
}
}
.chat-parent .prose {
visibility: visible;
}
.old-ui .chat-parent {
2023-12-25 17:10:07 -05:00
height: calc(100dvh - 192px - var(--header-height) - var(--input-delta));
margin-bottom: var(--input-delta) !important;
}
.chat-parent.bigchat {
2023-12-25 17:10:07 -05:00
height: calc(100dvh - 98px - var(--header-height) - var(--input-delta)) !important;
margin-bottom: var(--input-delta) !important;
}
2023-08-13 00:12:15 -04:00
.chat > .messages {
display: flex;
flex-direction: column;
2023-12-25 17:25:31 -05:00
padding-top: 25px;
2023-08-13 00:12:15 -04:00
}
.chat .message:last-child {
2023-10-20 16:02:18 -04:00
margin-bottom: 0 !important;
2024-07-01 00:09:54 -04:00
padding-bottom: 15px !important;
}
.message-body h1,
.message-body h2,
.message-body h3,
.message-body h4 {
color: var(--body-text-color);
margin: 20px 0 10px 0;
}
.dark .message q {
2024-07-24 21:56:54 -04:00
color: #f5b031;
}
2024-07-25 23:22:07 -04:00
.message-body q::before, .message-body q::after {
content: "";
}
2023-12-17 23:26:57 -05:00
.message-body li {
list-style-position: outside;
}
.chat .message-body ul, .chat .message-body ol {
padding-inline-start: 2em;
}
2023-10-20 15:30:01 -04:00
.message-body li:not(:last-child) {
2023-08-28 23:14:02 -04:00
margin-top: 0 !important;
2023-10-20 15:30:01 -04:00
margin-bottom: 2px !important;
}
.message-body li:last-child {
2023-10-20 16:02:18 -04:00
margin-bottom: 0 !important;
2023-08-13 00:12:15 -04: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 15:18:46 -04:00
.message-body pre:not(:last-child) {
2023-10-20 15:30:01 -04:00
margin-bottom: 35.625px !important;
2023-08-13 00:12:15 -04:00
}
2023-10-11 15:18:46 -04:00
.message-body pre:last-child {
2023-10-20 16:02:18 -04:00
margin-bottom: 0 !important;
2023-10-11 15:18:46 -04:00
}
#default-tab .prose pre, #notebook-tab .prose pre {
overflow: scroll;
}
2023-08-13 00:12:15 -04:00
.message-body code {
white-space: pre-wrap !important;
word-wrap: break-word !important;
2024-06-19 20:40:33 -04:00
border: 1px solid #666;
border-radius: 5px;
font-size: 82%;
2023-10-11 15:18:46 -04:00
padding: 1px 3px;
background: white !important;
color: #1f2328;
}
.dark .message-body code {
background: #0d1117 !important;
2024-06-19 20:40:33 -04:00
color: rgb(201 209 217);
2023-10-11 15:18:46 -04:00
}
.message-body pre > code {
display: block;
2023-10-20 15:30:01 -04:00
padding: 15px;
2023-08-13 00:12:15 -04: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-10 21:20:49 -04:00
#chat-input > :first-child {
background-color: transparent;
}
#chat-input .progress-text {
display: none;
}
2023-08-13 00:12:15 -04:00
@media print {
body {
visibility: hidden;
}
.chat {
visibility: visible;
position: absolute;
left: 0;
top: 0;
2023-08-18 00:44:22 -04:00
max-width: unset;
max-height: unset;
2023-08-13 00:12:15 -04:00
width: 100%;
2023-08-18 00:44:22 -04:00
overflow-y: visible;
2023-08-13 00:12:15 -04:00
}
.message {
break-inside: avoid;
}
.gradio-container {
overflow: visible;
}
.tab-nav {
display: none !important;
}
2023-08-18 00:44:22 -04:00
#chat-tab > :first-child {
max-width: unset;
}
2023-08-13 00:12:15 -04:00
}
#show-controls {
position: absolute;
2023-09-14 08:32:44 -04:00
height: 100%;
2024-06-27 23:47:42 -04:00
background-color: transparent;
2023-10-20 16:02:18 -04:00
border: 0 !important;
border-radius: 0;
2023-09-15 01:03:59 -04:00
}
#show-controls label {
z-index: 1000;
2023-09-15 01:03:59 -04:00
position: absolute;
right: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.dark #show-controls span {
color: var(--neutral-400);
}
#show-controls span {
color: var(--neutral-600);
}
#typing-container {
display: none;
position: absolute;
background-color: transparent;
left: -2px;
top: 4px;
padding: var(--block-padding);
}
.typing {
2023-10-20 16:02:18 -04:00
position: relative;
}
.visible-dots #typing-container {
display: block;
}
.typing span {
2023-10-20 16:02:18 -04: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 16:02:18 -04:00
animation-delay: .2s;
margin-left: calc(10px * 1.5);
}
.typing .dot2 {
2023-10-20 16:02:18 -04:00
animation-delay: .4s;
margin-left: calc(10px * 3);
}
@keyframes blink {
2023-10-20 16:02:18 -04:00
0% {
opacity: .1;
}
20% {
opacity: 1;
}
100% {
opacity: .1;
}
}
#chat-tab .generating {
2023-10-20 16:02:18 -04:00
display: none !important;
}
2023-09-13 01:36:12 -04:00
.hover-element {
2023-10-20 16:02:18 -04:00
position: relative;
font-size: 24px;
2023-09-13 01:36:12 -04:00
}
.hover-menu {
2023-10-20 16:02:18 -04:00
display: none;
position: absolute;
bottom: 80%;
left: 0;
background-color: var(--background-fill-primary);
box-shadow: 0 0 5px rgb(0 0 0 / 25%);
2023-10-20 16:02:18 -04:00
z-index: 10000;
min-width: 330px;
flex-direction: column;
2023-09-13 01:36:12 -04:00
}
.hover-menu button {
2023-10-20 16:02:18 -04:00
width: 100%;
background: transparent !important;
border-radius: 0 !important;
border-color: var(--border-color-primary);
2023-10-20 16:02:18 -04:00
justify-content: space-between;
margin: 0 !important;
height: 36px;
2023-09-14 10:20:36 -04:00
}
.hover-menu button:not(#clear-history-confirm) {
2023-10-20 16:02:18 -04:00
border-bottom: 0 !important;
2023-09-14 10:09:06 -04:00
}
2023-09-14 10:20:36 -04:00
.hover-menu button:not(#clear-history-confirm):last-child {
border-bottom: var(--button-border-width) solid var(--border-color-primary) !important;
2023-09-13 01:36:12 -04:00
}
.hover-menu button:hover {
2023-10-20 16:02:18 -04:00
background: var(--button-secondary-background-fill-hover) !important;
2023-09-13 01:36:12 -04:00
}
2023-09-13 22:21:39 -04:00
.transparent-substring {
2023-10-20 16:02:18 -04:00
opacity: 0.333;
2023-09-13 22:21:39 -04:00
}
#chat-tab:not(.old-ui) #chat-buttons {
display: none !important;
}
#gr-hover-container {
2023-10-20 16:02:18 -04: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 16:02:18 -04:00
min-width: 0 !important;
display: flex;
flex-direction: column-reverse;
padding-bottom: 3px;
flex: 0 auto !important;
}
#chat-input-container {
2023-10-20 16:02:18 -04:00
min-width: 0 !important;
}
#chat-input-container > .form {
2023-10-20 16:02:18 -04:00
background: transparent;
border: none;
}
#chat-input-row {
2023-10-20 16:02:18 -04:00
padding-bottom: 20px;
}
.old-ui #chat-input-row, #chat-input-row.bigchat {
2023-10-20 16:02:18 -04:00
padding-bottom: 0 !important;
}
#chat-col {
2023-12-20 23:42:06 -05:00
padding-bottom: 100px;
}
.old-ui #chat-col, #chat-col.bigchat {
2023-12-20 23:42:06 -05:00
padding-bottom: 80px !important;
}
.old-ui #chat-buttons #clear-history-confirm {
order: -1;
}
2023-09-21 17:30:52 -04:00
.chat ol, .chat ul {
margin-top: 6px !important;
}
2023-09-21 21:53:03 -04:00
/* ----------------------------------------------
Past chats menus
---------------------------------------------- */
#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;
2024-06-24 23:07:22 -04:00
top: 36px;
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: 400px;
margin-right: calc(-0.5*(var(--document-width) - 880px - 14px - 16px * 2));
}
}
2023-10-20 16:02:18 -04:00
/* ----------------------------------------------
Keep dropdown menus above errored components
2023-10-20 16:02:18 -04:00
---------------------------------------------- */
.options {
z-index: 100 !important;
}
/* ----------------------------------------------
Big profile picture for characters
---------------------------------------------- */
.bigProfilePicture {
position: fixed;
bottom: 0;
left: 0;
width: calc((100vw - 880px - 120px) /2);
}
2024-02-25 12:10:16 -05:00
.pfp_character {
position: relative;
z-index: 100;
}
2023-11-19 09:53:41 -05:00
.pfp_character:hover {
cursor: pointer;
}
@media screen and (width <= 1300px) {
.bigProfilePicture {
display: none;
}
}
2024-06-24 23:07:22 -04:00
#past-chats {
max-height: calc(100vh - 195px);
overflow-y: scroll !important;
border-radius: 0;
scrollbar-width: none; /* Hide scrollbar in Firefox by default */
}
#past-chats label {
width: 100%;
background-color: transparent !important;
background: none;
border: 0;
border-radius: 0;
padding-top: 8px;
padding-bottom: 8px;
}
#past-chats > :nth-child(2) {
display: none;
}
#past-chats > :nth-child(3) {
gap: 0;
}
#past-chats::-webkit-scrollbar {
display: none;
}
#past-chats:hover {
scrollbar-width: auto;
}
#past-chats:hover::-webkit-scrollbar {
display: block;
}
@media screen and (width < 1327px) {
#past-chats {
max-height: 300px;
}
}