/*
Theme Name: Viral Infuse Child
Description: Custom child theme for viralinfuse.com — social media growth tools redesign
Author: Viral Infuse
Template: default-mag
Version: 1.0.0
*/

* { box-sizing: border-box; }
body { margin: 0; font-family: 'Public Sans', system-ui, sans-serif; background: oklch(0.985 0.004 255); color: oklch(0.21 0.02 258); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4 { font-family: 'Sora', system-ui, sans-serif; margin: 0; letter-spacing: -0.025em; }
p { margin: 0; }
a { color: oklch(0.52 0.16 258); text-decoration: none; }
a:hover { color: oklch(0.42 0.17 258); text-decoration: underline; }
summary { cursor: pointer; list-style: none; }
summary::-webkit-details-marker { display: none; }
details[open] .vi-plus { transform: rotate(45deg); }
img { max-width: 100%; }

.vi-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px oklch(0.21 0.02 258 / 0.09); border-color: oklch(0.52 0.16 258 / 0.5) !important; text-decoration: none; }
.vi-nav-link:hover { background: oklch(0.94 0.008 258); color: oklch(0.21 0.02 258); text-decoration: none; }
.vi-cta:hover { background: oklch(0.32 0.04 258) !important; color: oklch(0.99 0.004 255); text-decoration: none; }
.vi-btn-accent:hover { background: oklch(0.81 0.15 70) !important; text-decoration: none; }
.vi-btn-outline:hover { background: oklch(0.98 0.004 255 / 0.09) !important; text-decoration: none; }
.vi-post-card:hover { box-shadow: 0 12px 28px oklch(0.21 0.02 258 / 0.08); text-decoration: none; }
.vi-footer-link:hover { color: oklch(1 0 0) !important; }
.vi-page-link:hover { border-color: oklch(0.52 0.16 258); text-decoration: none; }

@media (max-width: 760px) {
  .vi-sidebar { display: none; }
  .vi-toc { display: none; }
}
