diff --git a/package.json b/package.json index 5c27c976..4baaca75 100644 --- a/package.json +++ b/package.json @@ -15,12 +15,15 @@ "typecheck": "tsc" }, "dependencies": { - "@docusaurus/core": "3.7.0", - "@docusaurus/plugin-content-docs": "3.7.0", + "@docusaurus/plugin-content-blog": "^3.8.1", + "@docusaurus/plugin-content-docs": "^3.8.1", + "@docusaurus/plugin-content-pages": "^3.8.1", "@docusaurus/plugin-google-analytics": "^3.8.1", - "@docusaurus/plugin-ideal-image": "3.7.0", - "@docusaurus/preset-classic": "3.7.0", - "@docusaurus/theme-mermaid": "3.7.0", + "@docusaurus/plugin-ideal-image": "^3.8.1", + "@docusaurus/plugin-sitemap": "^3.8.1", + "@docusaurus/preset-classic": "^3.8.1", + "@docusaurus/theme-classic": "^3.8.1", + "@docusaurus/theme-mermaid": "^3.8.1", "@docusaurus/theme-search-algolia": "3.7.0", "@floating-ui/react": "^0.27.8", "@giscus/react": "^3.1.0", @@ -53,6 +56,7 @@ "vanilla-tilt": "^1.8.1" }, "devDependencies": { + "@docusaurus/core": "^3.8.1", "@docusaurus/module-type-aliases": "3.7.0", "@docusaurus/tsconfig": "3.7.0", "@docusaurus/types": "3.7.0", diff --git a/src/components/header/header.css b/src/components/header/header.css index a5c46acd..3e4c2061 100644 --- a/src/components/header/header.css +++ b/src/components/header/header.css @@ -1,230 +1,321 @@ .chh__header--body { - display: flex; - justify-content: center; - align-items: center; - transform-style: preserve-3d; - overflow: hidden; - padding: 3rem auto; - background-color: var(--ifm-background-color); - color: #000; - transition: background 0.4s ease, color 0.4s ease; -} - -html.theme-dark .chh__header--body { - background: linear-gradient(to right, #121212, #1e1e1e); - color: #fff; -} - -.chh__header { - display: flex; - flex-direction: row; - position: relative; -} - -.chh__header-content { - width: 100%; - flex: 1; - display: flex; - justify-content: center; - align-items: flex-start; - flex-direction: column; - margin-right: 2rem; -} - -.chh__header-content h1 { - font-weight: 700; - font-size: 62px; - line-height: 75px; - letter-spacing: -0.04em; - background: linear-gradient( - 30deg, - rgba(206, 86, 174, 0.972) 0%, - rgb(253 29 29 / 100%) 50%, - rgb(252 176 69 / 100%) 100% - ); - background-clip: text; - -webkit-text-fill-color: transparent; - transition: background 0.3s ease-in-out; -} - -html.theme-dark .chh__header-content h1 { - background: linear-gradient( - 45deg, - rgba(255, 255, 255, 0.9), - rgba(180, 180, 255, 0.9) - ); - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; -} - -.chh__header-content p { - font-family: var(--font-family); - font-weight: 400; - font-size: 22px; - text-align: justify; - line-height: 30px; - margin-top: 1.5rem; - color: #000; /* Light mode text */ - transition: color 0.3s ease-in-out; -} - -/* Override paragraph color in dark mode */ -[data-theme='dark'] .chh__header-content p { - color: #ccc; /* Softer white for dark mode */ -} - - -html.theme-dark .chh__header-content p { - color: #ccc; -} - -.chh__header-content__input { - width: 100%; - margin: 2rem 0 1rem; - display: flex; - flex-direction: row; -} - -.chh__header-content__input--link { - text-decoration: none; - font-size: 20px; - line-height: 28px; - font-weight: 600; -} - -.chh__header-content__input--link:hover { - text-decoration: none; -} - -.chh__header-content__input button { - flex: 0.6; - width: 100%; - min-height: 50px; - font-weight: 400; - font-size: 20px; - line-height: 28px; - border: 2px solid #ff4820; - padding: 0 0.8rem; - cursor: pointer; - outline: none; - border-radius: 5px; - margin: 0 1rem 0 0; - background: linear-gradient(90deg, #07ab8a5f 0%, transparent 100%); -} - -html.theme-dark .chh__header-content__input button { - background: rgba(255, 255, 255, 0.05); - border-color: #4fe3c5; - color: #fff; -} - -.chh__header-content__input button:last-child { - background: transparent; -} - -.chh__header-content__input button:hover { - background: linear-gradient(90deg, #f0a90fd0 0%, transparent 100%); -} - -.chh__header-image { - width: auto; - height: auto; - flex: 1 0 0%; - display: flex; - justify-content: center; - align-items: center; - padding: 0.3rem; - border-radius: 10% 40%; -} - -.chh__header-image img { - transition: transform 0.8s cubic-bezier(0.25, 0.8, 0.25, 1); - filter: drop-shadow(10px 10px 20px rgba(0, 0, 0, 0.6)); -} - -.chh__header-image img:hover { - transform: scale(1.03); - filter: drop-shadow(10px 10px 20px rgba(169, 158, 158, 0.6)); -} - -@keyframes float { - 0% { - transform: translateY(0); - } - 50% { - transform: translateY(-10px); - } - 100% { - transform: translateY(0); - } -} - -.float-animation { - animation: float 2s ease-in-out infinite; -} - -/* ===== Responsive ===== */ -@media screen and (max-width: 1050px) { + display: flex; + justify-content: center; + align-items: center; + transform-style: preserve-3d; + overflow: hidden; + padding: 3rem auto; + + } .chh__header { - flex-direction: column; + display: flex; + flex-direction: row; + position: relative; } - + .chh__header-content { - margin: 0 0 3rem; - } -} - -@media screen and (max-width: 768px) { - .gradient__text { - text-align: center; + width: 100%; + flex: 1; + display: flex; + justify-content: center; + align-items: flex-start; + flex-direction: column; + margin-right: 2rem; } -} - -@media screen and (max-width: 650px) { + .chh__header-content h1 { - font-size: 48px; - line-height: 60px; + font-weight: 700; + font-size: 62px; + line-height: 75px; + letter-spacing: -0.04em; + background: linear-gradient( + 30deg, + rgba(206, 86, 174, 0.972) 0%, + rgb(253 29 29 / 100%) 50%, + rgb(252 176 69 / 100%) 100% + ); + background-clip: text; + -webkit-text-fill-color: transparent; } - + .chh__header-content p { - font-size: 16px; - line-height: 24px; + font-weight: 400; + font-size: 22px; + text-align: justify; + line-height: 30px; + margin-top: 1.5rem; } - - .chh__header-content__input input, + + .chh__header-content__input { + width: 100%; + margin: 2rem 0 1rem; + + display: flex; + flex-direction: row; + } + + .chh__header-content__input--link { + text-decoration: none; + font-size: 20px; + line-height: 28px; + font-weight: 600; + } + + .chh__header-content__input--link:hover { + text-decoration: none; + } + .chh__header-content__input button { - font-size: 16px; - line-height: 24px; + flex: 0.6; + width: 100%; + min-height: 50px; + font-weight: 400; + font-size: 20px; + line-height: 28px; + border: 2px solid #ff4820; + padding: 0 0.8rem; + cursor: pointer; + outline: none; + border-radius: 5px; + margin: 0 1rem 0 0; } -} - -@media screen and (max-width: 490px) { + + .chh__header-content__input button:last-child { + background: transparent; + } + + .chh__header-content__input button:hover { + background: linear-gradient(90deg, #f0a90fd0 0%, transparent 100%); + } + + .chh__header-image { + width: auto; + height: auto; + flex: 1 0 0%; + display: flex; + justify-content: center; + align-items: center; + padding: 0.3rem; + border-radius: 10% 40%; + } + + .chh__header-image img { + transition: transform 0.8s cubic-bezier(0.25, 0.8, 0.25, 1); + filter: drop-shadow(10px 10px 20px rgba(0, 0, 0, 0.6)); + } + + .chh__header-image img:hover { + transform: scale(1.03); + filter: drop-shadow(10px 10px 20px rgba(169, 158, 158, 0.6)); + } + + @keyframes imageHoverEffect { + 0% { + transform: scale(1); + } + 50% { + transform: scale(1.03); + } + 100% { + transform: scale(1.06); + } + } + + .chh__header-image img:hover { + animation: damping 0.6s ease-in-out; /* Applied damping keyframes on hover */ + } + + @media screen and (max-width: 1050px) { + .chh__header { + flex-direction: column; + } + + .chh__header-content { + margin: 0 0 3rem; + } + } + @media screen and (max-width: 768px) { + .gradient__text{ + text-align: center; + } + + } + @media screen and (max-width: 350px) { + .anouncementBarContent, .navbar__title{ + font-size: medium; + } + } + @media screen and (max-width: 280px) { + .navbar__title{ + display: none; + } + } + @media screen and (max-width: 650px) { + .chh__header-content h1 { + font-size: 48px; + line-height: 60px; + } + + .chh__header-content p { + font-size: 16px; + line-height: 24px; + } + + .chh__header-content__input input, + .chh__header-content__input button { + font-size: 16px; + line-height: 24px; + } + } + + @media screen and (max-width: 490px) { + .chh__header-content h1 { + font-size: 36px; + line-height: 48px; + } + + .chh__header-content p { + font-size: 14px; + line-height: 24px; + } + + .chh__header-content__input input, + .chh__header-content__input button { + font-size: 12px; + line-height: 16px; + } + } + .chh__header { + display: flex; + flex-direction: row; + } + + .chh__header-content { + flex: 1; + display: flex; + justify-content: center; + align-items: flex-start; + flex-direction: column; + + margin-right: 5rem; + } + .chh__header-content h1 { - font-size: 36px; - line-height: 48px; + line-height: 75px; + letter-spacing: -0.04em; } - + .chh__header-content p { - font-size: 14px; - line-height: 24px; + font-family: var(--font-family); + font-weight: 400; + font-size: 20px; + line-height: 28px; + + margin-top: 1.5rem; } - - .chh__header-content__input input, + + .chh__header-content__input { + width: 100%; + margin: 2rem 0 1rem; + + display: flex; + flex-direction: row; + } + + .chh__header-content__input input { + flex: 2; + width: 100%; + min-height: 50px; + font-family: var(--font-family); + font-weight: 400; + font-size: 20px; + line-height: 28px; + border: 2px solid #ff4820; + padding: 0 1rem; + outline: none; + + border-top-left-radius: 5px; + border-bottom-left-radius: 5px; + } + .chh__header-content__input button { - font-size: 12px; - line-height: 16px; + flex: 0.6; + width: 100%; + min-height: 50px; + font-weight: 400; + font-size: 20px; + line-height: 28px; + background: linear-gradient(90deg, #07ab8a5f 0%, transparent 100%); + border: 2px solid #20e3a2; + padding: 0 1rem; + cursor: pointer; + outline: none; + + border-top-right-radius: 5px; + border-bottom-right-radius: 5px; } -} - -@media screen and (max-width: 350px) { - .anouncementBarContent, - .navbar__title { - font-size: medium; + + @media screen and (max-width: 1050px) { + .chh__header { + flex-direction: column; + } + + .chh__header-content { + margin: 0 0 3rem; + } } -} - -@media screen and (max-width: 280px) { - .navbar__title { - display: none; + + @media screen and (max-width: 650px) { + .chh__header-content h1 { + font-size: 48px; + line-height: 60px; + } + + .chh__header-content p { + font-size: 16px; + line-height: 24px; + } + + .chh__header-content__input input, + .chh__header-content__input button { + font-size: 16px; + line-height: 24px; + } } -} + + @media screen and (max-width: 490px) { + .chh__header-content h1 { + font-size: 36px; + line-height: 48px; + } + + .chh__header-content p { + font-size: 14px; + line-height: 24px; + } + + .chh__header-content__input input, + .chh__header-content__input button { + font-size: 12px; + line-height: 16px; + } + } + + @keyframes float { + 0% { + transform: translateY(0); + } + + 50% { + transform: translateY(-10px); + } + + 100% { + transform: translateY(0); + } + } + + .float-animation { + animation: float 2s ease-in-out infinite; + } + diff --git a/src/components/ui/FirebaseAuthGithub.tsx b/src/components/ui/FirebaseAuthGithub.tsx index eb8d80b3..ffc12197 100644 --- a/src/components/ui/FirebaseAuthGithub.tsx +++ b/src/components/ui/FirebaseAuthGithub.tsx @@ -50,7 +50,7 @@ const FirebaseAuthGithub: React.FC = () => { return (