
/* CORE TEMPLATE STYLES */
:root { --bg: #050816; --card: #0f172a; --text: #ffffff; --muted: #94a3b8; --border: rgba(255,255,255,.08); --blue: #3b82f6; --pink: #ec4899; --violet: #8b5cf6; --gradient: linear-gradient(135deg, #2563eb, #8b5cf6, #ec4899); --shadow: 0 20px 60px rgba(0,0,0,.45); --radius: 24px; }
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Poppins',sans-serif; background:var(--bg); color:var(--text); overflow-x:hidden; }
::-webkit-scrollbar { width:10px; }
::-webkit-scrollbar-thumb { background:linear-gradient(#3b82f6,#8b5cf6,#ec4899); border-radius:20px; }

body::before { content:""; position:fixed; width:700px; height:700px; background:radial-gradient(circle,#8b5cf633 0%,transparent 70%); top:-200px; right:-100px; z-index:-1; filter:blur(40px); pointer-events: none; }
body::after { content:""; position:fixed; width:600px; height:600px; background:radial-gradient(circle,#ec489933 0%,transparent 70%); bottom:-200px; left:-100px; z-index:-1; filter:blur(40px); pointer-events: none; }

.container { max-width:1320px; margin:0 auto; padding:0 24px; }
header { position:fixed; width:100%; top:0; left:0; z-index:999; padding:18px 0; transition:.4s; background: #ffffff; border-bottom: 1px solid rgba(0,0,0,0.05); }
header.scrolled { background: rgba(255,255,255,0.95); backdrop-filter: blur(16px); padding: 14px 0; box-shadow: 0 4px 30px rgba(0,0,0,0.05); border-bottom: none; }
.navbar { display:flex; justify-content:space-between; align-items:center; }
.logo-container { display: inline-flex; align-items: center; text-decoration: none; transition: opacity 0.3s; }
.logo-container img { height: 70px; object-fit: contain; display: block; }
.nav-links { display:flex; gap:40px; align-items:center; }
.nav-links a { color:#0f172a; text-decoration:none; font-weight:600; transition:.3s; position:relative; }
.nav-links a:hover { color:var(--blue); }
.cta-btn { padding:14px 28px; background:var(--gradient); border:none; border-radius:999px; color:#fff; font-weight:700; cursor:pointer; font-size:15px; box-shadow:0 10px 25px rgba(139,92,246,.25); transition:.4s; }
.cta-btn:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 15px 35px rgba(236,72,153,.35); }
.menu-toggle { display:none; font-size:28px; cursor:pointer; color:#0f172a; }

/* SINGLE BLOG HERO */
.blog-hero { padding: 160px 0 60px; text-align: center; border-bottom: 1px solid rgba(255,255,255,0.05); position: relative; }
.blog-hero-category { display: inline-block; padding: 6px 16px; background: rgba(139, 92, 246, 0.15); border: 1px solid rgba(139, 92, 246, 0.3); color: #c4b5fd; border-radius: 999px; font-size: 14px; font-weight: 600; margin-bottom: 20px; }
.blog-hero h1 { font-size: 48px; font-weight: 600; line-height: 1.2; margin-bottom: 24px; max-width: 900px; margin-left: auto; margin-right: auto; }
.blog-hero-meta { display: flex; justify-content: center; align-items: center; gap: 20px; color: var(--muted); font-size: 15px; flex-wrap: wrap; }
.blog-hero-meta span { display: flex; align-items: center; gap: 8px; }
.blog-hero-meta i { color: var(--pink); }

/* MAIN LAYOUT */
.blog-page-wrapper { padding: 60px 0 100px; }
.blog-container { display: grid; grid-template-columns: 2.3fr 1fr; gap: 50px; align-items: start; }

/* CONTENT STYLING */
.blog-main-content { background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.05); border-radius: 32px; padding: 40px; }
.blog-main-content .header-img { width: 100%; height: 450px; object-fit: cover; border-radius: 24px; margin-bottom: 40px; box-shadow: var(--shadow); }
.blog-main-content p {     font-size: 15px;
    line-height: 1.6; color: #cbd5e1; margin-bottom: 24px; }
.blog-main-content h2, .blog-main-content h3 { color: #fff; margin: 40px 0 20px; font-weight: 600; line-height: 1.3; }
.blog-main-content h2 { font-size: 32px; }
.blog-main-content h3 { font-size: 24px; }
.blog-main-content ul, .blog-main-content ol { color: #cbd5e1; font-size: 17px; line-height: 1.9; margin-bottom: 24px; padding-left: 20px; }
.blog-main-content li { margin-bottom: 10px; }
.blog-main-content blockquote { padding: 30px; margin: 40px 0; background: linear-gradient(to right, rgba(139,92,246,0.1), transparent); border-left: 4px solid var(--violet); border-radius: 0 16px 16px 0; font-size: 20px; font-style: italic; color: #fff; }

/* TAGS & SHARE */
.blog-footer { margin-top: 50px; padding-top: 30px; border-top: 1px solid rgba(255,255,255,0.08); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
.post-tags { display: flex; gap: 10px; flex-wrap: wrap; }
.post-tags a { padding: 8px 16px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 999px; color: var(--muted); text-decoration: none; font-size: 13px; transition: 0.3s; }
.post-tags a:hover { background: var(--gradient); border-color: transparent; color: #fff; }
.share-links { display: flex; gap: 15px; align-items: center; }
.share-links span { font-size: 15px; font-weight: 600; color: #fff; }
.share-links a { width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255,255,255,0.05); color: #fff; text-decoration: none; transition: 0.3s; border: 1px solid rgba(255,255,255,0.1); }
.share-links a:hover { background: var(--pink); border-color: var(--pink); transform: translateY(-3px); }

/* AUTHOR BOX */
.author-box { display: flex; gap: 25px; align-items: center; background: rgba(15,23,42,0.6); padding: 30px; border-radius: 24px; border: 1px solid rgba(255,255,255,0.06); margin-top: 40px; }
.author-box img { width: 90px; height: 90px; border-radius: 50%; object-fit: cover; border: 2px solid var(--violet); }
.author-info h4 { font-size: 20px; margin-bottom: 8px; color: #fff; }
.author-info p { font-size: 14px; margin: 0; line-height: 1.6; }

/* SIDEBAR */
.sidebar { position: sticky; top: 100px; }
.sidebar-widget { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.06); padding: 30px; border-radius: 24px; margin-bottom: 30px; backdrop-filter: blur(12px); }
.sidebar-widget h4 { font-size: 20px; margin-bottom: 25px; color: #fff; position: relative; padding-bottom: 12px; }
.sidebar-widget h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 40px; height: 3px; background: var(--gradient); border-radius: 5px; }

/* Search Widget */
.search-form { display: flex; position: relative; }
.search-form input { width: 100%; padding: 14px 20px; padding-right: 50px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; color: #fff; font-family: 'Poppins'; outline: none; }
.search-form input:focus { border-color: var(--blue); }
.search-form button { position: absolute; right: 5px; top: 5px; bottom: 5px; width: 40px; background: transparent; border: none; color: var(--muted); cursor: pointer; transition: 0.3s; }
.search-form button:hover { color: var(--pink); }

/* Category Widget */
.cat-list { list-style: none; }
.cat-list li { margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid rgba(255,255,255,0.05); }
.cat-list li:last-child { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
.cat-list a { display: flex; justify-content: space-between; color: var(--muted); text-decoration: none; transition: 0.3s; font-size: 15px; }
.cat-list a:hover { color: var(--blue); transform: translateX(5px); }

/* Recent Posts Widget */
.recent-post { display: flex; gap: 15px; margin-bottom: 20px; align-items: center; }
.recent-post:last-child { margin-bottom: 0; }
.recent-post img { width: 80px; height: 80px; border-radius: 12px; object-fit: cover; }
.recent-post-info h5 { font-size: 15px; margin-bottom: 8px; line-height: 1.4; font-weight: 500; }
.recent-post-info h5 a { color: #fff; text-decoration: none; transition: 0.3s; }
.recent-post-info h5 a:hover { color: var(--violet); }
.recent-post-info span { font-size: 12px; color: var(--muted); display: flex; align-items: center; gap: 5px; }

/* FOOTER */
footer { padding:100px 0 40px; border-top:1px solid rgba(255,255,255,.06); background:#040611; }
.footer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:50px; margin-bottom:60px; }
.footer-col h4 { font-size:22px; margin-bottom:24px; }
.footer-col p, .footer-col a { color:#94a3b8; text-decoration:none; line-height:2; transition:.3s; font-size: 15px; display: block;}
.footer-col a:hover { color:#fff; }
.footer-bottom { padding-top:30px; border-top:1px solid rgba(255,255,255,.06); text-align:center; color:#64748b; font-size: 14px; display: flex; flex-direction: column; gap: 10px;}

@media(max-width: 1024px) {
    .blog-container { grid-template-columns: 1fr; }
    .sidebar { position: relative; top: 0; margin-top: 40px; }
}
@media(max-width:768px) {
    .blog-hero h1 { font-size: 34px; }
    .blog-main-content { padding: 25px; }
    .blog-main-content .header-img { height: 250px; }
    .nav-links { position:fixed; top:80px; left:-100%; width:100%; height:calc(100vh - 80px); background:#050816; flex-direction:column; padding-top:60px; transition:.4s; }
    .nav-links a { color:#fff; }
    .nav-links.active { left:0; }
    .menu-toggle { display:block; }
}