510 lines
12 KiB
CSS
510 lines
12 KiB
CSS
@import "tailwindcss";
|
|
|
|
/* Blinking cursor animation for chat input */
|
|
@keyframes blink {
|
|
|
|
0%,
|
|
50% {
|
|
opacity: 1;
|
|
}
|
|
|
|
51%,
|
|
100% {
|
|
opacity: 0;
|
|
}
|
|
}
|
|
|
|
@keyframes blinkLightGreen {
|
|
|
|
0% {
|
|
box-shadow: inset 1px 0px 3px -1px rgba(255, 255, 255, 0.2),
|
|
inset -1px 0px 3px 1px rgba(0, 0, 0, 0.15),
|
|
0px 0px 2px 1px #32ff6f67;
|
|
}
|
|
|
|
50% {
|
|
box-shadow: inset -1px 0px 3px 1px rgba(255, 255, 255, 0.2),
|
|
inset 1px 0px 3px -1px rgba(0, 0, 0, 0.15);
|
|
}
|
|
|
|
100% {
|
|
box-shadow: inset 1px 0px 3px -1px rgba(255, 255, 255, 0.2),
|
|
inset -1px 0px 3px 1px rgba(0, 0, 0, 0.15),
|
|
0px 0px 2px 1px #32ff6f67;
|
|
}
|
|
}
|
|
|
|
@keyframes blinkLightYellow {
|
|
|
|
0% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #ffef3c6c;
|
|
}
|
|
|
|
50% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15);
|
|
}
|
|
|
|
100% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #ffef3c6c;
|
|
}
|
|
}
|
|
|
|
@keyframes blinkLightBlue {
|
|
|
|
0% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #39a2f362;
|
|
}
|
|
|
|
50% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15);
|
|
}
|
|
|
|
100% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #39a2f362;
|
|
}
|
|
}
|
|
|
|
@keyframes blinkLightRed {
|
|
|
|
0% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #ff2d5e63;
|
|
}
|
|
|
|
50% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15);
|
|
}
|
|
|
|
100% {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #ff2d5e63;
|
|
}
|
|
}
|
|
|
|
.blinkLightBlue,
|
|
.blinkLightGreen,
|
|
.blinkLightRed,
|
|
.blinkLightYellow {
|
|
animation-duration : 5s;
|
|
animation-timing-function: ease-in-out;
|
|
animation-iteration-count: infinite;
|
|
border : solid 1px transparent;
|
|
}
|
|
|
|
.blinkLightBlue {
|
|
animation-name: blinkLightBlue;
|
|
box-shadow : inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #39a2f32d;
|
|
border: solid 1px #39a2f362;
|
|
}
|
|
|
|
.blinkLightGreen {
|
|
animation-name: blinkLightGreen;
|
|
box-shadow : inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #a5ffc075;
|
|
border: solid 1px rgba(187, 248, 185, 0.31);
|
|
}
|
|
|
|
.blinkLightRed {
|
|
animation-name: blinkLightRed;
|
|
box-shadow : inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #f63d6875;
|
|
border: solid 1px #e4547656;
|
|
}
|
|
|
|
.blinkLightYellow {
|
|
animation-name: blinkLightYellow;
|
|
box-shadow : inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15),
|
|
0px 0px 2px 1px #f7f3c275;
|
|
border: solid 1px #e4e25456;
|
|
}
|
|
|
|
.blinkLightActive {
|
|
animation: none !important;
|
|
}
|
|
|
|
.blinkLightEmpty {
|
|
box-shadow: inset 1px 0px 3px 0px rgba(255, 255, 255, 0.20),
|
|
inset -1px 0px 3px 0px rgba(78, 78, 78, 0.15);
|
|
animation : none !important;
|
|
border : none !important;
|
|
background-color: var(--Neutrals-NeutralSlate400)
|
|
}
|
|
|
|
:root {
|
|
|
|
|
|
--background-primary : #FFFFFF;
|
|
--background-secondary: #FDFDFD;
|
|
--background-tertiary : #FAFAFA;
|
|
|
|
--text-primary : #0A0D12;
|
|
--text-secondary: #717680;
|
|
--text-tertiary : #A4A7AE;
|
|
|
|
--accent : #5E48FC;
|
|
--accent-hover: #4C3CF0;
|
|
--accent-text : #FFFFFF;
|
|
|
|
--border-color: #E9EAEB;
|
|
--border-light: #F5F5F5;
|
|
|
|
--sidebar-bg : #FDFDFD;
|
|
--sidebar-text : #717680;
|
|
--sidebar-active-bg : #5E48FC;
|
|
--sidebar-active-text: #FFFFFF;
|
|
|
|
--input-bg : #F5F5F5;
|
|
--input-border : #E9EAEB;
|
|
--input-placeholder: #717680;
|
|
|
|
--button-secondary-bg : #F5F5F5;
|
|
--button-secondary-hover: #E9EAEB;
|
|
|
|
--color-red : #FB3748;
|
|
--color-green : #1FC16B;
|
|
--color-orange : #5E48FC;
|
|
--color-light-orange: #F38744;
|
|
--color-yellow : #FEEE95;
|
|
|
|
--Neutrals-NeutralState950: #0A0D12;
|
|
--Neutrals-NeutralSlate900: #181D27;
|
|
--Neutrals-NeutralSlate800: #252B37;
|
|
--Neutrals-NeutralSlate700: #414651;
|
|
--Neutrals-NeutralSlate600: #535862;
|
|
--Neutrals-NeutralSlate500: #7A7680;
|
|
--Neutrals-NeutralSlate400: #A4A7AE;
|
|
--Neutrals-NeutralSlate300: #D5D7DA;
|
|
--Neutrals-NeutralSlate200: #E9EAEB;
|
|
--Neutrals-NeutralSlate100: #F5F5F5;
|
|
--Neutrals-NeutralSlate50 : #FAFAFA;
|
|
--Neutrals-NeutralSlate0 : #FDFDFD;
|
|
|
|
--neutral-100: #A4A7AE;
|
|
--neutral-200: #D5D7DA;
|
|
--neutral-300: #E9EAEB;
|
|
--neutral-400: #F5F5F5;
|
|
--neutral-500: #FAFAFA;
|
|
--neutral-600: #FDFDFD;
|
|
--neutral-700: #FEFEFE;
|
|
|
|
--Brand-Orange: #3399FF;
|
|
|
|
--Other-Red : #FB3748;
|
|
--Other-Green: #1FC16B;
|
|
--Other-White: #FFFFFF;
|
|
|
|
--button-bg-primary : #5E48FC;
|
|
--button-border-primary: #7B64FF;
|
|
|
|
--white: #FFFFFF;
|
|
}
|
|
|
|
.dark {
|
|
/* Dark theme variables - using new Figma color palette */
|
|
--background-primary : #0A0D12;
|
|
/* Dark 7 */
|
|
--background-secondary : #181D27;
|
|
/* Dark 6 */
|
|
--background-tertiary : #252B37;
|
|
/* Dark 5 */
|
|
--text-primary : #FDFDFD;
|
|
/* Gray 6 */
|
|
--text-secondary : #D5D7DA;
|
|
/* Gray 2 */
|
|
--text-tertiary : #A4A7AE;
|
|
/* Gray 1 */
|
|
--accent : #5E48FC;
|
|
/* Brand Main */
|
|
--accent-hover : #6B56FF;
|
|
/* Slightly lighter brand */
|
|
--accent-text : #FFFFFF;
|
|
/* Base White */
|
|
--border-color : #535862;
|
|
/* Dark 3 */
|
|
--border-light : #414651;
|
|
/* Dark 4 */
|
|
--sidebar-bg : #181D27;
|
|
/* Dark 6 */
|
|
--sidebar-text : #D5D7DA;
|
|
/* Gray 2 */
|
|
--sidebar-active-bg : #5E48FC;
|
|
/* Brand Main */
|
|
--sidebar-active-text : #FFFFFF;
|
|
/* Base White */
|
|
--input-bg : #252B37;
|
|
/* Dark 5 */
|
|
--input-border : #414651;
|
|
/* Dark 4 */
|
|
--input-placeholder : #717680;
|
|
/* Dark 2 */
|
|
--button-secondary-bg : #414651;
|
|
/* Dark 4 */
|
|
--button-secondary-hover: #535862;
|
|
/* Dark 3 */
|
|
--status-red : #F63D68;
|
|
/* Other Red */
|
|
--status-green : #3CCB7F;
|
|
/* Other Green */
|
|
--status-orange : #FF4405;
|
|
/* Other Orange */
|
|
--status-yellow : #FEEE95;
|
|
/* Other Yellow */
|
|
--neutral-200 : #717670;
|
|
--neutral-300 : #535862;
|
|
--neutral-400 : #414651;
|
|
--neutral-500 : #252B37;
|
|
--neutral-600 : #181D27;
|
|
--neutral-700 : #0A0D12;
|
|
|
|
--Neutrals-NeutralState950: #FDFDFD;
|
|
--Neutrals-NeutralSlate900: #FAFAFA;
|
|
--Neutrals-NeutralSlate800: #F5F5F5;
|
|
--Neutrals-NeutralSlate700: #E9EAEB;
|
|
--Neutrals-NeutralSlate600: #D5D7DA;
|
|
--Neutrals-NeutralSlate500: #A4A7AE;
|
|
--Neutrals-NeutralSlate400: #7A7680;
|
|
--Neutrals-NeutralSlate300: #535862;
|
|
--Neutrals-NeutralSlate200: #414651;
|
|
--Neutrals-NeutralSlate100: #252B37;
|
|
--Neutrals-NeutralSlate50 : #181D27;
|
|
--Neutrals-NeutralSlate0 : #0A0D12;
|
|
|
|
}
|
|
|
|
* {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'Neue Montreal';
|
|
src : url('/fonts/NeueMontreal-Regular.woff2') format('woff2'),
|
|
url('/fonts/NeueMontreal-Regular.woff') format('woff');
|
|
font-weight : normal;
|
|
font-style : normal;
|
|
font-display: swap;
|
|
}
|
|
|
|
|
|
|
|
body {
|
|
margin: 0;
|
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
|
|
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
|
|
sans-serif;
|
|
-webkit-font-smoothing : antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
background-color : var(--background-primary);
|
|
color : var(--text-primary);
|
|
}
|
|
|
|
#root {
|
|
height: 100vh;
|
|
}
|
|
|
|
/* Custom slider styling */
|
|
.slider {
|
|
-webkit-appearance: none;
|
|
appearance : none;
|
|
background : var(--border-color);
|
|
outline : none;
|
|
border-radius : 8px;
|
|
transition : all 0.2s ease;
|
|
}
|
|
|
|
.slider::-webkit-slider-thumb {
|
|
-webkit-appearance: none;
|
|
appearance : none;
|
|
width : 20px;
|
|
height : 20px;
|
|
border-radius : 50%;
|
|
background : var(--accent);
|
|
cursor : pointer;
|
|
border : 2px solid white;
|
|
box-shadow : 0 2px 4px rgba(0, 0, 0, 0.2);
|
|
transition : all 0.2s ease;
|
|
}
|
|
|
|
.slider::-webkit-slider-thumb:hover {
|
|
background: var(--accent-hover);
|
|
transform : scale(1.1);
|
|
}
|
|
|
|
.slider::-moz-range-thumb {
|
|
width : 20px;
|
|
height : 20px;
|
|
border-radius: 50%;
|
|
background : var(--accent);
|
|
cursor : pointer;
|
|
border : 2px solid white;
|
|
box-shadow : 0 2px 4px rgba(0, 0, 0, 0.2);
|
|
transition : all 0.2s ease;
|
|
}
|
|
|
|
.slider::-moz-range-thumb:hover {
|
|
background: var(--accent-hover);
|
|
transform : scale(1.1);
|
|
}
|
|
|
|
/* Radio button styling */
|
|
input[type="radio"] {
|
|
accent-color: var(--accent);
|
|
}
|
|
|
|
/* Focus states */
|
|
.slider:focus {
|
|
box-shadow: 0 0 0 3px rgba(94, 72, 252, 0.3);
|
|
}
|
|
|
|
input[type="radio"]:focus {
|
|
box-shadow: 0 0 0 3px rgba(94, 72, 252, 0.3);
|
|
}
|
|
|
|
/* Markdown Content Styling */
|
|
.markdown-content {
|
|
line-height: 1.6;
|
|
color: var(--Neutrals-NeutralSlate950);
|
|
}
|
|
|
|
.markdown-content h1,
|
|
.markdown-content h2,
|
|
.markdown-content h3,
|
|
.markdown-content h4,
|
|
.markdown-content h5,
|
|
.markdown-content h6 {
|
|
font-weight: 600;
|
|
line-height: 1.3;
|
|
margin-top: 1em;
|
|
margin-bottom: 0.5em;
|
|
}
|
|
|
|
.markdown-content h1:first-child,
|
|
.markdown-content h2:first-child,
|
|
.markdown-content h3:first-child,
|
|
.markdown-content h4:first-child,
|
|
.markdown-content h5:first-child,
|
|
.markdown-content h6:first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.markdown-content p {
|
|
margin-bottom: 1em;
|
|
}
|
|
|
|
.markdown-content p:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.markdown-content ul,
|
|
.markdown-content ol {
|
|
margin-bottom: 1em;
|
|
padding-left: 1.5em;
|
|
}
|
|
|
|
.markdown-content li {
|
|
margin-bottom: 0.25em;
|
|
}
|
|
|
|
.markdown-content li:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.markdown-content strong {
|
|
font-weight: 600;
|
|
color: var(--Neutrals-NeutralSlate950);
|
|
}
|
|
|
|
.markdown-content code {
|
|
font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
|
font-size: 0.875em;
|
|
padding: 0.2em 0.4em;
|
|
background-color: var(--Neutrals-NeutralSlate100);
|
|
border-radius: 4px;
|
|
color: var(--Neutrals-NeutralSlate800);
|
|
}
|
|
|
|
.markdown-content pre {
|
|
font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
|
|
font-size: 0.875em;
|
|
line-height: 1.5;
|
|
background-color: var(--Neutrals-NeutralSlate100);
|
|
border-radius: 8px;
|
|
padding: 1rem;
|
|
overflow-x: auto;
|
|
margin-bottom: 1em;
|
|
}
|
|
|
|
.markdown-content pre code {
|
|
background: none;
|
|
padding: 0;
|
|
border-radius: 0;
|
|
color: inherit;
|
|
}
|
|
|
|
.markdown-content blockquote {
|
|
border-left: 4px solid var(--Neutrals-NeutralSlate300);
|
|
padding-left: 1rem;
|
|
margin: 1em 0;
|
|
color: var(--Neutrals-NeutralSlate700);
|
|
font-style: italic;
|
|
}
|
|
|
|
.markdown-content a {
|
|
color: var(--Brand-Orange);
|
|
text-decoration: underline;
|
|
transition: color 0.2s;
|
|
}
|
|
|
|
.markdown-content a:hover {
|
|
color: var(--Brand-Orange);
|
|
opacity: 0.8;
|
|
}
|
|
|
|
.markdown-content table {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
margin-bottom: 1em;
|
|
border: 1px solid var(--Neutrals-NeutralSlate200);
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.markdown-content th,
|
|
.markdown-content td {
|
|
padding: 0.75rem 1rem;
|
|
text-align: left;
|
|
border-bottom: 1px solid var(--Neutrals-NeutralSlate200);
|
|
}
|
|
|
|
.markdown-content th {
|
|
background-color: var(--Neutrals-NeutralSlate100);
|
|
font-weight: 600;
|
|
color: var(--Neutrals-NeutralSlate950);
|
|
}
|
|
|
|
.markdown-content tr:last-child td {
|
|
border-bottom: none;
|
|
}
|
|
|
|
.markdown-content hr {
|
|
border: none;
|
|
border-top: 1px solid var(--Neutrals-NeutralSlate200);
|
|
margin: 1.5em 0;
|
|
} |