@tailwind base; @tailwind components; @tailwind utilities; html, body { padding: 0; margin: 0; font-family: "plus-jakarta-sans", -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif; background-color: white; } a { color: inherit; text-decoration: none; } * { box-sizing: border-box; } .g327 { border-color: #302f30; } @font-face { font-family: "plus-jakarta-sans"; src: url("../public/fonts/PlusJakartaSans.ttf"); font-display: swap; } .grr { grid-template-columns: repeat(2, 1fr); } .greyC { filter: gray; -webkit-filter: grayscale(100%); transition: 0.4s; } .greyC:hover { filter: none; -webkit-filter: none; transition: 0.4s; } .chat__message { transform-origin: 0 100%; transform: scale(0); animation: message 0.15s ease-out 0s forwards; animation-delay: 500ms; } @keyframes message { 0% { max-height: 100%; } 80% { transform: scale(1.1); } 100% { transform: scale(1); max-height: 100%; overflow: visible; padding-top: 1rem; } } .doc__source { transform-origin: 0 100%; transform: scale(0); animation: message2 0.15s ease-out 0s forwards; animation-delay: 50ms; } @keyframes message2 { 0% { max-height: 100%; } 80% { transform: scale(1.1); } 100% { transform: scale(1); max-height: 100%; overflow: visible; } } @media (prefers-color-scheme: light) { .sidebar-items:after { content: " "; position: absolute; left: 0; right: 0px; height: 4em; top: 69vh; z-index: 1; pointer-events: none; } } @media (prefers-color-scheme: dark) { .sidebar-items:after { content: " "; position: absolute; left: 0; right: 0px; height: 4em; top: 69vh; z-index: 1; pointer-events: none; } } @media (prefers-color-scheme: light) { .fade-up-border { background: linear-gradient( to bottom, rgba(220, 221, 223, 10%), rgb(220, 221, 223) 89% ); } } @media (prefers-color-scheme: dark) { .fade-up-border { background: linear-gradient( to bottom, rgba(41, 37, 36, 50%), rgb(41 37 36) 90% ); } } /** * ============================================== * Dot Falling * ============================================== */ .dot-falling { position: relative; left: -9999px; width: 10px; height: 10px; border-radius: 5px; background-color: #eeeeee; color: #5fa4fa; box-shadow: 9999px 0 0 0 #eeeeee; animation: dot-falling 1.5s infinite linear; animation-delay: 0.1s; } .dot-falling::before, .dot-falling::after { content: ""; display: inline-block; position: absolute; top: 0; } .dot-falling::before { width: 10px; height: 10px; border-radius: 5px; background-color: #eeeeee; color: #eeeeee; animation: dot-falling-before 1.5s infinite linear; animation-delay: 0s; } .dot-falling::after { width: 10px; height: 10px; border-radius: 5px; background-color: #eeeeee; color: #eeeeee; animation: dot-falling-after 1.5s infinite linear; animation-delay: 0.2s; } @keyframes dot-falling { 0% { box-shadow: 9999px -15px 0 0 rgba(152, 128, 255, 0); } 25%, 50%, 75% { box-shadow: 9999px 0 0 0 #eeeeee; } 100% { box-shadow: 9999px 15px 0 0 rgba(152, 128, 255, 0); } } @keyframes dot-falling-before { 0% { box-shadow: 9984px -15px 0 0 rgba(152, 128, 255, 0); } 25%, 50%, 75% { box-shadow: 9984px 0 0 0 #eeeeee; } 100% { box-shadow: 9984px 15px 0 0 rgba(152, 128, 255, 0); } } @keyframes dot-falling-after { 0% { box-shadow: 10014px -15px 0 0 rgba(152, 128, 255, 0); } 25%, 50%, 75% { box-shadow: 10014px 0 0 0 #eeeeee; } 100% { box-shadow: 10014px 15px 0 0 rgba(152, 128, 255, 0); } } #chat-history::-webkit-scrollbar, #chat-container::-webkit-scrollbar, .no-scroll::-webkit-scrollbar { display: none !important; } /* Hide scrollbar for IE, Edge and Firefox */ #chat-history, #chat-container, .no-scroll { -ms-overflow-style: none !important; /* IE and Edge */ scrollbar-width: none !important; /* Firefox */ } .z-99 { z-index: 99; } .z-98 { z-index: 98; } .file-uploader { width: 100% !important; height: 100px !important; } .grid-loader > circle { fill: #008eff; } dialog { pointer-events: none; opacity: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; } dialog[open] { opacity: 1; pointer-events: inherit; } dialog::backdrop { background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(2px); } .backdrop { background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(2px); } .animate-slow-pulse { transform: scale(1); animation: subtlePulse 20s infinite; will-change: transform; } @keyframes subtlePulse { 0% { transform: scale(1); } 50% { transform: scale(1.1); } 100% { transform: scale(1); } } @keyframes subtleShift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .login-input-gradient { background: linear-gradient( 180deg, rgba(61, 65, 71, 0.3) 0%, rgba(44, 47, 53, 0.3) 100% ) !important; box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.25); } .white-fill { fill: white; } .tip:before { content: ""; display: block; width: 0; height: 0; position: absolute; border-bottom: 8px solid transparent; border-top: 8px solid rgba(255, 255, 255, 0.5); border-left: 8px solid transparent; border-right: 8px solid transparent; border-radius: 0px 0px 0px 5px; left: 1%; top: 100%; } .user-reply > div:first-of-type { border: 2px solid white; } .reply > *:last-child::after { content: "|"; animation: blink 1.5s steps(1) infinite; color: white; font-size: 14px; } @keyframes blink { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } } @layer components { .radio-container:has(input:checked) { @apply border-blue-500 bg-blue-400/10 text-blue-800; } }