diff --git a/src/components/blogCarousel/blogCard.tsx b/src/components/blogCarousel/blogCard.tsx
index 562fa5c9..1f3db7db 100644
--- a/src/components/blogCarousel/blogCard.tsx
+++ b/src/components/blogCarousel/blogCard.tsx
@@ -1,14 +1,10 @@
"use client";
import * as React from "react";
-import { useState } from "react";
-import { motion } from "framer-motion";
import Link from "@docusaurus/Link";
import { Card, CardContent } from "../ui/card";
import { getAuthorNames } from "../../utils/authors";
const BlogCard = ({ type, date, title, content, imageUrl, id, authors }) => {
- const [isHovered, setIsHovered] = useState(false);
-
if (!id || !type) {
return
data not fetched properly, imageId and entryId not found
;
}
@@ -36,19 +32,7 @@ const BlogCard = ({ type, date, title, content, imageUrl, id, authors }) => {
const category = getCategory(title);
return (
- setIsHovered(true)}
- onMouseLeave={() => setIsHovered(false)}
- className="relative h-full overflow-hidden transition-all duration-300"
- >
+
{
-
+
);
};
diff --git a/src/components/blogCarousel/blogCarousel.css b/src/components/blogCarousel/blogCarousel.css
index bc9923a0..b40238c6 100644
--- a/src/components/blogCarousel/blogCarousel.css
+++ b/src/components/blogCarousel/blogCarousel.css
@@ -1,16 +1,14 @@
-/* Blog Carousel Card Styles - Matching Blog Page Design */
+/* Blog Carousel Card Styles - Simple and Clean */
/* Article Card */
.article-card {
background: white;
- border-radius: 20px;
+ border-radius: 12px;
overflow: hidden;
- box-shadow:
- 0 4px 20px rgba(0, 0, 0, 0.08),
- 0 1px 3px rgba(0, 0, 0, 0.1);
- transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
+ transition: box-shadow 0.2s ease;
position: relative;
- border: 1px solid rgba(255, 255, 255, 0.8);
+ border: 1px solid rgba(0, 0, 0, 0.1);
height: 100%;
display: flex;
flex-direction: column;
@@ -19,176 +17,87 @@
[data-theme="dark"] .article-card {
background: #242526;
border: 1px solid rgba(74, 85, 104, 0.3);
- box-shadow:
- 0 4px 20px rgba(0, 0, 0, 0.4),
- 0 1px 3px rgba(0, 0, 0, 0.3);
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
-.article-card::before {
- content: "";
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- background: linear-gradient(
- 135deg,
- rgba(99, 102, 241, 0.02) 0%,
- rgba(168, 85, 247, 0.02) 100%
- );
- opacity: 0;
- transition: opacity 0.3s ease;
- pointer-events: none;
+.article-card:hover {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
-.article-card:hover::before {
- opacity: 1;
+[data-theme="dark"] .article-card:hover {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}
.card-category {
position: absolute;
- top: 20px;
- left: 20px;
- background: linear-gradient(
- 135deg,
- rgba(255, 255, 255, 0.95) 0%,
- rgba(255, 255, 255, 0.9) 100%
- );
+ top: 12px;
+ left: 12px;
+ background: rgba(255, 255, 255, 0.9);
color: #6366f1;
- padding: 8px 16px;
- border-radius: 25px;
- font-size: 12px;
- font-weight: 700;
+ padding: 6px 12px;
+ border-radius: 16px;
+ font-size: 11px;
+ font-weight: 600;
z-index: 2;
- backdrop-filter: blur(20px);
+ backdrop-filter: blur(8px);
border: 1px solid rgba(99, 102, 241, 0.1);
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
- transition: all 0.2s ease;
text-transform: uppercase;
letter-spacing: 0.5px;
}
[data-theme="dark"] .card-category {
- background: linear-gradient(
- 135deg,
- rgba(36, 37, 38, 0.95) 0%,
- rgba(26, 32, 44, 0.9) 100%
- );
+ background: rgba(36, 37, 38, 0.9);
color: #a78bfa;
border: 1px solid rgba(167, 139, 250, 0.2);
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
-}
-
-.article-card:hover .card-category {
- background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
- color: white;
- transform: scale(1.05);
-}
-
-[data-theme="dark"] .article-card:hover .card-category {
- background: linear-gradient(135deg, #a78bfa 0%, #c084fc 100%);
- color: #1a202c;
}
.card-image {
height: 200px;
overflow: hidden;
position: relative;
- background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
+ background: #f1f5f9;
flex-shrink: 0;
}
-.card-image::before {
- content: "";
- position: absolute;
- top: 0;
- left: 0;
- right: 0;
- bottom: 0;
- background: linear-gradient(
- 135deg,
- rgba(99, 102, 241, 0.1) 0%,
- rgba(168, 85, 247, 0.1) 100%
- );
- opacity: 0;
- transition: opacity 0.3s ease;
- z-index: 1;
-}
-
-.article-card:hover .card-image::before {
- opacity: 1;
-}
-
.card-image img {
width: 100%;
height: 100%;
object-fit: cover;
- transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
- filter: brightness(1) saturate(1);
-}
-
-.article-card:hover .card-image img {
- transform: scale(1.08);
- filter: brightness(1.1) saturate(1.2);
+ transition: transform 0.2s ease;
}
.card-content {
- padding: 24px;
- position: relative;
- background: linear-gradient(
- 135deg,
- rgba(255, 255, 255, 0.95) 0%,
- rgba(248, 250, 252, 0.95) 100%
- );
+ padding: 20px;
flex: 1;
display: flex;
flex-direction: column;
}
-[data-theme="dark"] .card-content {
- background: linear-gradient(
- 135deg,
- rgba(36, 37, 38, 0.95) 0%,
- rgba(26, 32, 44, 0.95) 100%
- );
-}
-
.card-title {
- font-size: 18px;
- font-weight: 700;
+ font-size: 16px;
+ font-weight: 600;
color: #1e293b;
- margin: 0 0 12px 0;
+ margin: 0 0 10px 0;
line-height: 1.3;
- letter-spacing: -0.01em;
- transition: color 0.2s ease;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
-.article-card:hover .card-title {
- color: #6366f1;
-}
-
[data-theme="dark"] .card-title {
color: #f1f5f9;
}
-[data-theme="dark"] .article-card:hover .card-title {
- color: #a78bfa;
-}
-
.card-description {
font-size: 14px;
color: #64748b;
- line-height: 1.6;
- margin: 0 0 20px 0;
+ line-height: 1.5;
+ margin: 0 0 16px 0;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
- font-weight: 400;
flex: 1;
}
@@ -200,33 +109,13 @@
display: flex;
align-items: center;
justify-content: space-between;
- margin-bottom: 16px;
- padding-bottom: 16px;
- border-bottom: 1px solid rgba(226, 232, 240, 0.8);
- position: relative;
- gap: 12px;
+ padding-top: 12px;
+ border-top: 1px solid rgba(226, 232, 240, 0.8);
+ gap: 10px;
}
[data-theme="dark"] .card-meta {
- border-bottom-color: rgba(74, 85, 104, 0.3);
-}
-
-.card-meta::before {
- content: "";
- position: absolute;
- bottom: -1px;
- left: 0;
- width: 40px;
- height: 2px;
- background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
- border-radius: 1px;
- opacity: 0;
- transition: all 0.3s ease;
-}
-
-.article-card:hover .card-meta::before {
- opacity: 1;
- width: 60px;
+ border-top-color: rgba(74, 85, 104, 0.3);
}
.card-author {
@@ -238,151 +127,93 @@
}
.author-avatar {
- width: 28px;
- height: 28px;
+ width: 24px;
+ height: 24px;
border-radius: 50%;
- background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
+ background: #6366f1;
display: flex;
align-items: center;
justify-content: center;
- font-size: 14px;
+ font-size: 12px;
color: white;
font-weight: 600;
- box-shadow: 0 2px 8px rgba(99, 102, 241, 0.3);
flex-shrink: 0;
- transition: all 0.3s ease;
-}
-
-.author-avatar:hover {
- transform: scale(1.1);
- box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}
.author-name {
font-size: 12px;
color: #475569;
- font-weight: 600;
+ font-weight: 500;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
- transition: color 0.2s ease;
-}
-
-.author-name:hover {
- color: #6366f1;
}
[data-theme="dark"] .author-name {
color: #cbd5e1;
}
-[data-theme="dark"] .author-name:hover {
- color: #a78bfa;
-}
-
.card-read-time {
font-size: 11px;
color: #94a3b8;
font-weight: 500;
- background: rgba(148, 163, 184, 0.1);
- padding: 4px 8px;
- border-radius: 12px;
flex-shrink: 0;
}
[data-theme="dark"] .card-read-time {
color: #64748b;
- background: rgba(100, 116, 139, 0.2);
}
.card-read-more {
- display: inline-flex;
- align-items: center;
- gap: 8px;
+ display: inline-block;
color: #6366f1;
text-decoration: none;
font-size: 13px;
- font-weight: 700;
- padding: 10px 16px;
- border-radius: 12px;
- background: linear-gradient(
- 135deg,
- rgba(99, 102, 241, 0.1) 0%,
- rgba(139, 92, 246, 0.1) 100%
- );
- border: 1px solid rgba(99, 102, 241, 0.2);
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
- position: relative;
- overflow: hidden;
- margin-top: auto;
-}
-
-.card-read-more::before {
- content: "";
- position: absolute;
- top: 0;
- left: -100%;
- width: 100%;
- height: 100%;
- background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
- transition: left 0.3s ease;
- z-index: -1;
+ font-weight: 600;
+ margin-top: 12px;
}
.card-read-more:hover {
- color: white;
- transform: translateY(-2px);
- box-shadow: 0 8px 25px rgba(99, 102, 241, 0.3);
-}
-
-.card-read-more:hover::before {
- left: 0;
+ color: #4f46e5;
}
[data-theme="dark"] .card-read-more {
color: #a78bfa;
- background: linear-gradient(
- 135deg,
- rgba(167, 139, 250, 0.1) 0%,
- rgba(192, 132, 252, 0.1) 100%
- );
- border-color: rgba(167, 139, 250, 0.2);
}
[data-theme="dark"] .card-read-more:hover {
- color: white;
+ color: #c084fc;
}
-/* Responsive adjustments for carousel cards */
+/* Responsive adjustments */
@media (max-width: 768px) {
.card-image {
height: 160px;
}
.card-content {
- padding: 20px;
+ padding: 16px;
}
.card-title {
- font-size: 16px;
- margin-bottom: 10px;
+ font-size: 15px;
+ margin-bottom: 8px;
}
.card-description {
font-size: 13px;
- margin-bottom: 16px;
+ margin-bottom: 12px;
-webkit-line-clamp: 2;
}
.card-meta {
- margin-bottom: 12px;
- padding-bottom: 12px;
+ padding-top: 10px;
}
.author-avatar {
- width: 24px;
- height: 24px;
- font-size: 12px;
+ width: 22px;
+ height: 22px;
+ font-size: 11px;
}
.author-name {
@@ -391,66 +222,9 @@
.card-read-time {
font-size: 10px;
- padding: 3px 6px;
}
.card-read-more {
font-size: 12px;
- padding: 8px 12px;
}
}
-
-/* Smooth page transitions */
-.page-transition-enter {
- opacity: 0;
- transform: translateY(20px);
-}
-
-.page-transition-enter-active {
- opacity: 1;
- transform: translateY(0);
- transition:
- opacity 0.6s ease-out,
- transform 0.6s ease-out;
-}
-
-.page-transition-exit {
- opacity: 1;
- transform: translateY(0);
-}
-
-.page-transition-exit-active {
- opacity: 0;
- transform: translateY(-20px);
- transition:
- opacity 0.4s ease-in,
- transform 0.4s ease-in;
-}
-
-/* Blog Carousel Section Enhancements */
-.blog-carousel-section {
- background: linear-gradient(135deg, #f8f9ff 0%, #f0f2ff 50%, #e8ebff 100%);
- padding: 5px;
- position: relative;
- overflow: hidden;
-}
-
-[data-theme="dark"] .blog-carousel-section {
- background: linear-gradient(135deg, #1b1b1d 0%, #121212 50%, #1a202c 100%);
-}
-
-/* Enhanced Focus States */
-.article-card:focus-within {
- outline: 2px solid #6366f1;
- outline-offset: 4px;
- border-radius: 24px;
-}
-
-/* Smooth Link Transitions */
-a[href*="/blog/"] {
- transition: all 0.3s ease;
-}
-
-a[href*="/blog/"]:hover {
- text-decoration: none;
-}