Spaces:
Sleeping
Sleeping
.main { | |
display: flex; | |
flex-direction: column; | |
justify-content: space-between; | |
} | |
.description { | |
display: inherit; | |
justify-content: inherit; | |
align-items: inherit; | |
font-size: 0.85rem; | |
max-width: var(--max-width); | |
width: 100%; | |
z-index: 2; | |
font-family: var(--font-mono); | |
} | |
.description a { | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
gap: 0.5rem; | |
} | |
.description p { | |
position: relative; | |
margin: 0; | |
padding: 1rem; | |
background-color: rgba(var(--callout-rgb), 0.5); | |
border: 1px solid rgba(var(--callout-border-rgb), 0.3); | |
border-radius: var(--border-radius); | |
} | |
.code { | |
font-weight: 700; | |
font-family: var(--font-mono); | |
} | |
.grid { | |
display: grid; | |
grid-template-columns: repeat(4, minmax(25%, auto)); | |
max-width: 100%; | |
width: var(--max-width); | |
} | |
.card { | |
padding: 1rem 1.2rem; | |
border-radius: var(--border-radius); | |
background: rgba(var(--card-rgb), 0); | |
border: 1px solid rgba(var(--card-border-rgb), 0); | |
transition: background 200ms, border 200ms; | |
} | |
.card span { | |
display: inline-block; | |
transition: transform 200ms; | |
} | |
.card h2 { | |
font-weight: 600; | |
margin-bottom: 0.7rem; | |
} | |
.card p { | |
margin: 0; | |
opacity: 0.6; | |
font-size: 0.9rem; | |
line-height: 1.5; | |
max-width: 30ch; | |
} | |
.center { | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
position: relative; | |
padding: 4rem 0; | |
} | |
.center::before { | |
background: var(--secondary-glow); | |
border-radius: 50%; | |
width: 480px; | |
height: 360px; | |
margin-left: -400px; | |
} | |
.center::after { | |
background: var(--primary-glow); | |
width: 240px; | |
height: 180px; | |
z-index: -1; | |
} | |
.center::before, | |
.center::after { | |
content: ''; | |
left: 50%; | |
position: absolute; | |
filter: blur(45px); | |
transform: translateZ(0); | |
} | |
.logo { | |
position: relative; | |
} | |
/* Enable hover only on non-touch devices */ | |
@media (hover: hover) and (pointer: fine) { | |
.card:hover { | |
background: rgba(var(--card-rgb), 0.1); | |
border: 1px solid rgba(var(--card-border-rgb), 0.15); | |
} | |
.card:hover span { | |
transform: translateX(4px); | |
} | |
} | |
@media (prefers-reduced-motion) { | |
.card:hover span { | |
transform: none; | |
} | |
} | |
/* Mobile */ | |
@media (max-width: 700px) { | |
.content { | |
padding: 4rem; | |
} | |
.grid { | |
grid-template-columns: 1fr; | |
margin-bottom: 120px; | |
max-width: 320px; | |
text-align: center; | |
} | |
.card { | |
padding: 1rem 2.5rem; | |
} | |
.card h2 { | |
margin-bottom: 0.5rem; | |
} | |
.center { | |
padding: 8rem 0 6rem; | |
} | |
.center::before { | |
transform: none; | |
height: 300px; | |
} | |
.description { | |
font-size: 0.8rem; | |
} | |
.description a { | |
padding: 1rem; | |
} | |
.description p, | |
.description div { | |
display: flex; | |
justify-content: center; | |
position: fixed; | |
width: 100%; | |
} | |
.description p { | |
align-items: center; | |
inset: 0 0 auto; | |
padding: 2rem 1rem 1.4rem; | |
border-radius: 0; | |
border: none; | |
border-bottom: 1px solid rgba(var(--callout-border-rgb), 0.25); | |
background: linear-gradient( | |
to bottom, | |
rgba(var(--background-start-rgb), 1), | |
rgba(var(--callout-rgb), 0.5) | |
); | |
background-clip: padding-box; | |
backdrop-filter: blur(24px); | |
} | |
.description div { | |
align-items: flex-end; | |
pointer-events: none; | |
inset: auto 0 0; | |
padding: 2rem; | |
height: 200px; | |
background: linear-gradient( | |
to bottom, | |
transparent 0%, | |
rgb(var(--background-end-rgb)) 40% | |
); | |
z-index: 1; | |
} | |
} | |
/* Tablet and Smaller Desktop */ | |
@media (min-width: 701px) and (max-width: 1120px) { | |
.grid { | |
grid-template-columns: repeat(2, 50%); | |
} | |
} | |
@media (prefers-color-scheme: dark) { | |
.vercelLogo { | |
filter: invert(1); | |
} | |
.logo { | |
filter: invert(1) drop-shadow(0 0 0.3rem #ffffff70); | |
} | |
} | |
@keyframes rotate { | |
from { | |
transform: rotate(360deg); | |
} | |
to { | |
transform: rotate(0deg); | |
} | |
} | |
.response pre { | |
white-space: pre-wrap; | |
word-break: break-word; | |
overflow-wrap: break-word; | |
overflow-y: auto; | |
max-height: 500px; /* Maximum height before scrolling */ | |
} | |
.input { | |
padding: 0.5rem 1rem; /* Adjust the padding inside the input */ | |
margin: 0.5rem 0; /* Adds margin around the input for spacing */ | |
border: 1px solid #ccc; /* A light border for the input */ | |
border-radius: 4px; /* Rounded corners */ | |
font-size: 1rem; /* Base font size */ | |
line-height: 1.5; /* Height of the input line */ | |
color: #333; /* Text color */ | |
background-color: #fff; /* Background color of the input */ | |
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Optional: Adds a subtle shadow */ | |
width: 100%; /* Make input full width of the parent container */ | |
box-sizing: border-box; /* Include padding and border in the element's total width and height */ | |
transition: border-color 0.3s, box-shadow 0.3s; /* Smooth transition for focus effect */ | |
} | |
.input:focus { | |
border-color: #007bff; /* Highlight color when input is focused */ | |
outline: none; /* Removes the default focus outline */ | |
box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25); /* Adds a glow effect on focus */ | |
} | |
.button { | |
padding: 0.75rem 1.5rem; /* Adjust padding to increase the button's size */ | |
margin-top: 1rem; /* Space above the button */ | |
border: none; /* No border for a button */ | |
border-radius: 25px; /* Rounded corners for a pill shape */ | |
font-size: 1rem; /* Font size */ | |
font-weight: bold; /* Make the text a bit bolder */ | |
color: white; /* Text color */ | |
background-image: linear-gradient(to right, #6ee7b7, #3b82f6); /* Gradient background */ | |
cursor: pointer; /* Change cursor to indicate it's clickable */ | |
transition: transform 0.2s, background-color 0.3s; /* Smooth transitions for interactions */ | |
text-transform: uppercase; /* Optional: uppercase text */ | |
letter-spacing: 0.05em; /* Spacing between letters */ | |
box-shadow: 0 4px 6px rgba(50, 50, 93, 0.11), 0 1px 3px rgba(0, 0, 0, 0.08); /* Subtle shadow for depth */ | |
} | |
.button:hover, .button:focus { | |
background-image: linear-gradient(to left, #6ee7b7, #3b82f6); /* Change the direction of gradient on hover/focus */ | |
transform: translateY(-2px); /* Slightly raise the button */ | |
box-shadow: 0 7px 14px rgba(50, 50, 93, 0.1), 0 3px 6px rgba(0, 0, 0, 0.08); /* Increase shadow size */ | |
} | |
.button:active { | |
transform: translateY(0); /* Button goes back down when clicked */ | |
box-shadow: 0 3px 6px rgba(50, 50, 93, 0.16), 0 2px 4px rgba(0, 0, 0, 0.1); /* Smaller shadow when button is pressed */ | |
} | |
.button:disabled { | |
background-image: linear-gradient(to right, #cbd5e1, #94a3b8); /* Less vibrant gradient for disabled state */ | |
cursor: default; /* No pointer cursor since it's not clickable */ | |
box-shadow: none; /* No shadow for a flat appearance */ | |
} | |
.main { | |
display: flex; | |
flex-direction: column; | |
height: 100vh; | |
justify-content: space-between; | |
padding: 2rem; | |
} | |
.title { | |
color: #333; | |
text-align: center; | |
margin-bottom: 2rem; | |
} | |
.messages { | |
flex: 1; | |
overflow-y: auto; | |
border-style: solid; | |
border-width: 4px; | |
border-image: linear-gradient(#6ee7b7, #3b82f6) 30; | |
padding: 25px; | |
border-radius: 5px; | |
} | |
.message { | |
background-color: #f9f9f9; | |
border-radius: 15px; | |
padding: 10px 15px; | |
margin: 8px 0; | |
max-width: 80%; | |
word-break: break-word; /* Ensures text breaks nicely */ | |
} | |
/* Different background for messages from the 'user' role */ | |
.message-user { | |
background-color: #dcf8c6 ; | |
} | |
/* Avatar styles */ | |
.avatar { | |
width: 40px; | |
height: 40px; | |
border-radius: 50%; | |
background-color: #ccc; | |
margin-right: 10px; | |
} | |
/* Style for function call messages */ | |
.function-call { | |
color: #555; | |
font-style: italic; | |
} | |
/* Input field styles */ | |
.input { | |
padding: 10px; | |
margin: 10px 0; | |
width: 100%; | |
box-sizing: border-box; | |
border: 1px solid #ddd; | |
border-radius: 4px; | |
} | |
/* Button styles */ | |
.button { | |
padding: 10px 20px; | |
background-color: #5cb85c; | |
color: white; | |
border: none; | |
border-radius: 4px; | |
cursor: pointer; | |
width: 100%; | |
} | |
.button:disabled { | |
background-color: #ccc; | |
} | |
/* Form styles */ | |
.form { | |
width: 100%; | |
} | |
.flex { | |
display: flex; | |
align-items: flex-start; | |
} | |
.text-gray-500 { | |
color: #737373; | |
} | |
.font-bold { | |
font-weight: bold; | |
} | |
/* Additional media query for responsive design */ | |
@media (max-width: 640px) { | |
.message { | |
max-width: 100%; | |
} | |
} | |
/* In your CSS file */ | |
.avatar-user { | |
width: 20px; /* Based on Tailwind's width setting */ | |
} | |
.bg-white { | |
background-color: white; | |
} | |
.bg-black { | |
background-color: black; | |
} | |
.bg-gray-100 { | |
background-color: #f7fafc; /* Approximation of Tailwind's gray-100 */ | |
} | |
.bg-green-500 { | |
background-color: #48bb78; /* Approximation of Tailwind's green-500 */ | |
} | |
.bg-gray-200 { | |
background-color: #edf2f7; /* Approximation of Tailwind's gray-200 */ | |
} | |
.bg-blue-500 { | |
background-color: #4299e1; /* Approximation of Tailwind's blue-500 */ | |
} | |
.border-gradient { | |
/* Size of your element */ | |
width: 200px; | |
height: 200px; | |
/* Setting up the gradient as a background image */ | |
background-image: linear-gradient(90deg, #6ee7b7, #3b82f6); | |
/* Positioning and sizing the pseudo-element to match the parent */ | |
position: relative; | |
display: flex; | |
justify-content: center; | |
align-items: center; | |
/* Adding the border */ | |
padding: 10px; | |
} | |
.border-gradient::after { | |
/* Creating the pseudo-element */ | |
content: ""; | |
position: absolute; | |
top: -10px; | |
left: -10px; | |
bottom: -10px; | |
right: -10px; | |
/* Applying the gradient to the border */ | |
background-image: inherit; | |
background-clip: padding-box, border-box; | |
background-origin: padding-box, border-box; | |
box-decoration-break: clone; | |
/* Adding a transparent border */ | |
border: solid 10px transparent; | |
} |