AI / app /globals.css
Niansuh's picture
Upload 18 files
17fcca9 verified
@tailwind base;
@tailwind components;
@tailwind utilities;
html{
scroll-behavior: smooth;
margin: 0;
padding: 0;
height: 100dvh;
overflow: hidden;
transition-duration: 500ms;
}
:root {
--theme-font-family-base: "Comfortaa", sans-serif;
--theme-font-family-heading: system-ui;
--theme-font-color-base: var(--color-surface-900);
--theme-font-color-dark: var(--color-surface-50);
--theme-rounded-base: 24px;
--theme-rounded-container: 24px;
--theme-border-base: 1px;
--on-primary: 255 255 255;
--on-secondary: 255 255 255;
--on-tertiary: 0 0 0;
--on-success: 0 0 0;
--on-warning: 0 0 0;
--on-error: 0 0 0;
--on-surface: 255 255 255;
--color-primary-50: 249 220 226;
--color-primary-100: 246 208 216;
--color-primary-200: 244 197 206;
--color-primary-300: 238 162 177;
--color-primary-400: 225 92 119;
--color-primary-500: 212 22 60;
--color-primary-600: 191 20 54;
--color-primary-700: 159 17 45;
--color-primary-800: 127 13 36;
--color-primary-900: 104 11 29;
--color-secondary-50: 227 237 243;
--color-secondary-100: 218 231 239;
--color-secondary-200: 209 225 235;
--color-secondary-300: 181 206 223;
--color-secondary-400: 126 170 199;
--color-secondary-500: 70 133 175;
--color-secondary-600: 63 120 158;
--color-secondary-700: 53 100 131;
--color-secondary-800: 42 80 105;
--color-secondary-900: 34 65 86;
--color-tertiary-50: 242 230 254;
--color-tertiary-100: 238 221 253;
--color-tertiary-200: 233 213 253;
--color-tertiary-300: 220 187 252;
--color-tertiary-400: 194 136 249;
--color-tertiary-500: 168 85 247;
--color-tertiary-600: 151 77 222;
--color-tertiary-700: 126 64 185;
--color-tertiary-800: 101 51 148;
--color-tertiary-900: 82 42 121;
--color-success-50: 228 247 220;
--color-success-100: 219 245 208;
--color-success-200: 210 242 197;
--color-success-300: 183 234 161;
--color-success-400: 130 219 91;
--color-success-500: 76 203 21;
--color-success-600: 68 183 19;
--color-success-700: 57 152 16;
--color-success-800: 46 122 13;
--color-success-900: 37 99 10;
--color-warning-50: 253 246 223;
--color-warning-100: 253 243 212;
--color-warning-200: 252 240 202;
--color-warning-300: 251 230 170;
--color-warning-400: 247 212 106;
--color-warning-500: 244 193 42;
--color-warning-600: 220 174 38;
--color-warning-700: 183 145 32;
--color-warning-800: 146 116 25;
--color-warning-900: 120 95 21;
--color-error-50: 248 236 236;
--color-error-100: 246 229 230;
--color-error-200: 244 223 224;
--color-error-300: 237 204 205;
--color-error-400: 224 165 167;
--color-error-500: 210 127 129;
--color-error-600: 189 114 116;
--color-error-700: 158 95 97;
--color-error-800: 126 76 77;
--color-error-900: 103 62 63;
--color-surface-50: 223 224 226;
--color-surface-100: 213 213 217;
--color-surface-200: 202 203 207;
--color-surface-300: 170 171 179;
--color-surface-400: 107 109 121;
--color-surface-500: 43 46 64;
--color-surface-600: 39 41 58;
--color-surface-700: 32 35 48;
--color-surface-800: 26 28 38;
--color-surface-900: 21 23 31;
}
textarea{
resize: none;
line-height: 1.5;
}
body {
transition-duration: 500ms;
color: rgb(82, 82, 82);
background: #ffffff; /* fallback for old browsers */
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
height: 100dvh;
background-image: radial-gradient(at 0% 0%, rgba(var(--color-secondary-500) / .33) 0px, transparent 50%), radial-gradient(at 98% 1%, rgba(var(--color-error-500) / .33) 0px, transparent 50%);
}
.flex-col {
display: flex;
flex-direction: column;
}
.flex-row {
display: flex;
flex-direction: row;
}
.fade-in-text {
opacity: 0;
transition: opacity 0.5s ease-in-out;
}
.fade-in-text.active {
opacity: 1;
}
.loader {
position: relative;
width: 120px;
height: 90px;
margin: 0 auto;
}
.loader:before {
content: "";
position: absolute;
bottom: 30px;
left: 50px;
height: 30px;
width: 30px;
border-radius: 50%;
background: #00b7ff;
animation: loading-bounce 0.5s ease-in-out infinite alternate;
}
.links-about{
background-color: #373737;
border: 2px solid #00b7ff;
border-radius: 10px;
padding: 5px;
width: fit-content;
flex-wrap: wrap;
align-self: center;
}
.mid {
display: flex;
flex-direction: column;
overflow-y: hidden;
justify-content: center;
text-align: center;
align-items: flex-start;
width: 100%;
}
.mid span{
width: 100%;
}
progress{
width: 70%;
color: #68d5d3;
height: 7px;
}
progress{
height: 10px;
border-radius: 60px;
box-sizing: border-box;
margin-bottom: 3px;
}
progress::-webkit-progress-value {
border-radius: 30px;
}
progress::-webkit-progress-bar{
background: transparent;
}
progress::-webkit-progress-value{
background-image: linear-gradient(90deg, #00b7ff, #68d5d3);
}
.links-about a{
margin: 0;
}
.loader:after {
content: "";
position: absolute;
right: 0;
top: 0;
height: 7px;
width: 45px;
border-radius: 4px;
box-shadow: 0 5px 0 #f2f2f2, -35px 50px 0 #f2f2f2, -70px 95px 0 #f2f2f2;
animation: loading-step 1s ease-in-out infinite;
}
@keyframes loading-bounce {
0% {
transform: scale(1, 0.7);
}
40% {
transform: scale(0.8, 1.2);
}
60% {
transform: scale(1, 1);
}
100% {
bottom: 140px;
}
}
@keyframes loading-step {
0% {
box-shadow: 0 10px 0 rgba(0, 0, 0, 0),
0 10px 0 #f2f2f2,
-35px 50px 0 #f2f2f2,
-70px 90px 0 #f2f2f2;
}
100% {
box-shadow: 0 10px 0 #f2f2f2,
-35px 50px 0 #f2f2f2,
-70px 90px 0 #f2f2f2,
-70px 90px 0 rgba(0, 0, 0, 0);
}
}
.modal {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
right: 0;
bottom: 0;
background-color: rgba(0, 0, 0, 0.8);
backdrop-filter: blur(10px);
display: flex;
flex-direction: column;
border-radius: 20px;
justify-content: center;
align-items: center;
z-index: 9999;
padding: 20px;
width: 90%;
max-width: 800px;
}
.modal iframe {
width: 100%;
height: 100%;
border-radius: 10px;
}
.btn {
padding: 10px;
border-radius: 10px;
/* background-color: white; */
background: radial-gradient(
231.94% 231.94% at 50% 100%,
#00c8ff 0,
rgba(38, 53, 193, 0) 25.24%
),
linear-gradient(180deg, rgba(243, 238, 255, 0), rgba(243, 238, 255, 0.04)),
rgba(147, 130, 255, 0.01);
background-image: linear-gradient(to right, #00c8ff, #2635c1);
color: white;
transition: 200ms;
box-shadow: 0 0 140px rgb(0, 162, 255);
-webkit-background-clip: text; /* Clip the gradient to the text */
background-clip: text;
-webkit-text-fill-color: transparent; /* Make the text transparent */
}
input {
padding: 10px;
border-radius: 10px;
border: none;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
background-color: transparent;
color: white;
padding: 10px;
border: #00c8ff 2px solid;
}
.btn:hover {
-webkit-background-clip: text; /* Clip the gradient to the text */
background-clip: text;
background: linear-gradient(to right, #00c8ff, #2635c1);
color: white;
-webkit-text-fill-color: white;
box-shadow: 0 0 100px rgba(255, 255, 255, 0.55);
}
.gradient-text {
background: linear-gradient(to right, #00c8ff, #2635c1);
-webkit-background-clip: text; /* Clip the gradient to the text */
background-clip: text;
-webkit-text-fill-color: transparent; /* Make the text transparent */
}
.title {
font-size: 70px;
font-weight: "300";
}
@media screen and (max-width: 510px) {
.title {
font-size: 30px;
font-weight: bold;
}
}
.thin-scroll::-webkit-scrollbar {
width: 4px;
background-color: rgba(0, 89, 255, 0.158); /* make scrollbar transparent */
border-radius: 10px;
cursor: pointer;
}
.thin-scroll::-webkit-scrollbar-thumb {
background-color: rgba(
0,
89,
255,
0.2
); /* make scrollbar thumb transparent */
border-radius: 10px;
cursor: pointer;
}
.row {
flex-wrap: wrap;
}
.card {
margin-top: 100px;
border-radius: 30px;
box-shadow: 0 20px 50px rgba(0, 172, 240, 0.717);
background-color: rgba(67, 67, 67, 0.1);
backdrop-filter: blur(10px);
transition-duration: 300ms;
}
.card h3 {
background: linear-gradient(to right, #1c758e, #2635c1);
font-size: 30px;
padding: 10px;
border-radius: 30px 30px 0px 0px;
font-weight: 200;
margin: 0;
}
.category-label {
display: inline-block;
background: linear-gradient(90deg, #00d2ff, #3a7bd5);
padding: 5px 10px;
border-radius: 50px;
margin-bottom: 10px;
}
.category-label span {
font-size: 20px;
color: white;
}
.circle {
animation: shadowAnimation 3s infinite; /* Apply animation */
}
@keyframes shadowAnimation {
0% {
box-shadow: 20px 20px 60px #00d2ff, -20px -20px 60px #3a7bd5;
}
25% {
box-shadow: -20px 20px 60px #00d2ff, 20px -20px 60px #3a7bd5;
}
50% {
box-shadow: -20px -20px 60px #00d2ff, 20px 20px 60px #3a7bd5;
}
75% {
box-shadow: 20px -20px 60px #00d2ff, -20px 20px 60px #3a7bd5;
}
100% {
box-shadow: 20px 20px 60px #00d2ff, -20px -20px 60px #3a7bd5;
}
}
.card p {
background: linear-gradient(to right, #1c758e, #2635c1);
-webkit-background-clip: text; /* Clip the gradient to the text */
background-clip: text;
-webkit-text-fill-color: transparent; /* Make the text transparent */
}
.card:hover {
box-shadow: 0 30px 50px rgba(0, 172, 240, 0.717);
transform: translateY(-10px);
}
.card p::before {
content: "";
display: inline-block;
width: 10px;
height: 10px;
background: linear-gradient(to right, #00c8ff, #2635c1);
border-radius: 50%;
margin-right: 20px;
}
.card p {
color: rgba(255, 255, 255, 0.516);
font-size: 17px;
text-align: left;
margin: 10px;
}
.ai-message {
background-color: #f9f9f9; /* Optional: background color */
padding: 16px; /* Adds padding inside the message block */
border-radius: 8px; /* Optional: rounded corners */
overflow-wrap: break-word; /* Breaks long words */
}
.card .line {
background: linear-gradient(to right, #00c8ff, #2635c1);
}
.card .n {
background-image: none;
border-radius: 0px 0px 30px 30px;
background-color: rgb(11, 11, 11);
display: flex;
justify-content: center;
align-items: center;
padding: 10px;
}
.sidenav a{
display: flex;
align-items: center;
justify-content: space-between;
text-align: center;
margin:0 ;
padding: 0;
padding-top: 10px;
padding-bottom: 10px;
}
.btn2 {
outline: 0;
display: inline-flex;
align-items: center;
justify-content: space-between;
background: linear-gradient(to right, #00c8ff, #2635c1);
min-width: 200px;
border: 0;
border-radius: 30px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
box-sizing: border-box;
padding: 16px 20px;
color: #fff;
font-size: 12px;
font-weight: 600;
letter-spacing: 1.2px;
text-transform: uppercase;
overflow: hidden;
cursor: pointer;
transition-duration: 400ms;
}
.btn2:hover {
opacity: 0.55;
padding: 16px 20px;
}
.btn2 .animation {
border-radius: 100%;
animation: ripple 0.6s linear infinite;
}
@keyframes ripple {
0% {
box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.1),
0 0 0 20px rgba(255, 255, 255, 0.1), 0 0 0 40px rgba(255, 255, 255, 0.1),
0 0 0 60px rgba(255, 255, 255, 0.1);
}
100% {
box-shadow: 0 0 0 20px rgba(255, 255, 255, 0.1),
0 0 0 40px rgba(255, 255, 255, 0.1), 0 0 0 60px rgba(255, 255, 255, 0.1),
0 0 0 80px rgba(255, 255, 255, 0);
}
}
.space {
height: 100px;
}