/* ================================================
   쭌랩 (JjuunLab) Custom Design
   GeneratePress Theme Override
   ================================================ */

:root {
  --jl-bg: #FAFAFA;
  --jl-text: #1A1A2E;
  --jl-text-sub: #6B7280;
  --jl-accent: #4F46E5;
  --jl-accent-hover: #4338CA;
  --jl-border: #E5E7EB;
  --jl-card-bg: #FFFFFF;
}

body { background-color: var(--jl-bg) !important; }

.site-title { font-size: 2.2rem !important; font-weight: 800 !important; letter-spacing: -0.02em; }
.site-title a { color: var(--jl-text) !important; text-decoration: none !important; }
/* ::after on link + heading level fallback */
.site-title a::after,
.main-title a::after,
h1.site-title::after {
  content: " JjuunLab";
  font-size: 0.45em; font-weight: 400; color: var(--jl-text-sub);
  letter-spacing: 0.05em; vertical-align: middle; margin-left: 0.3em;
}

.site-description { color: var(--jl-text-sub) !important; font-size: 0.9rem !important; margin-top: 2px; }

.main-navigation { background-color: var(--jl-text) !important; }
.main-navigation .main-nav ul li a {
  color: #E5E7EB !important; font-size: 0.9rem !important; font-weight: 500;
  padding: 12px 18px !important; transition: color 0.2s, background 0.2s;
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item a {
  color: #FFFFFF !important; background-color: var(--jl-accent) !important;
}

.site-content .hentry {
  background: var(--jl-card-bg); border: 1px solid var(--jl-border); border-radius: 12px;
  padding: 28px 32px !important; margin-bottom: 24px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04); transition: box-shadow 0.2s, transform 0.15s;
}
.site-content .hentry:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.08); transform: translateY(-2px); }

.entry-title a { color: var(--jl-text) !important; text-decoration: none !important; font-weight: 700; }
.entry-title a:hover { color: var(--jl-accent) !important; }

.entry-meta { color: var(--jl-text-sub) !important; font-size: 0.85rem !important; }
.entry-meta a { color: var(--jl-text-sub) !important; }

.cat-links a {
  background-color: var(--jl-accent); color: #fff !important;
  padding: 3px 10px; border-radius: 20px; font-size: 0.75rem !important;
  font-weight: 600; text-decoration: none !important; display: inline-block;
}
.cat-links a:hover { background-color: var(--jl-accent-hover); }

.read-more { color: var(--jl-accent) !important; font-weight: 600; text-decoration: none !important; }
.read-more:hover { text-decoration: underline !important; }

.site-info {
  background-color: var(--jl-text) !important; color: #9CA3AF !important;
  padding: 20px 0 !important; text-align: center; font-size: 0.85rem;
}
.site-info a { color: #D1D5DB !important; }
/* GeneratePress 크레딧 숨김 */
.site-info a[href*="generatepress"] { display: none; }
.site-info .copyright + a { display: none; }

a { color: var(--jl-accent); }
a:hover { color: var(--jl-accent-hover); }

/* ---- Mobile (tablets & phones) ---- */
@media (max-width: 768px) {
  .site-title { font-size: 1.6rem !important; }
  .site-title a::after { font-size: 0.4em; }

  .site-content .hentry {
    padding: 20px 20px !important;
    border-radius: 8px;
    margin-left: 12px;
    margin-right: 12px;
    margin-bottom: 16px;
  }

  .main-navigation .main-nav ul li a {
    padding: 10px 14px !important;
    font-size: 0.85rem !important;
  }

  .entry-content {
    word-break: keep-all;
    overflow-wrap: break-word;
  }

  .site-info {
    padding: 16px 12px !important;
  }
}

/* ---- Small phones (≤480px) ---- */
@media (max-width: 480px) {
  .site-title { font-size: 1.4rem !important; }
  .site-title a::after { font-size: 0.35em; margin-left: 0.2em; }

  .site-content .hentry {
    padding: 16px 16px !important;
    margin-left: 8px;
    margin-right: 8px;
  }
}
