/* /css/global.css */
/* ===== Global CSS — 리셋, 폰트, 색상 변수 ===== */

:root {
  --accent: #DC2626;
  --dark: #1a1a2e;
  --light: #f8fafc;
  --bg: #ffffff;
  --text: #1f2937;
  --text-light: #6b7280;
  --border: #e5e7eb;
  --max-width: 1500px;
}

*, *::before, *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  overflow-x: hidden;
}

body {
  font-family: 'Pretendard Variable', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--text);
  background: var(--bg);
}

a {
  color: var(--accent);
  text-decoration: none;
}

a:hover {
  opacity: 0.8;
}

img {
  max-width: 100%;
  height: auto;
  font-size: 0;
  color: transparent;
}

/* ===== Search Modal ===== */
.wawa-search-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  color: var(--accent);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  transition: background 0.2s, color 0.2s;
}
.wawa-search-btn:hover {
  background: rgba(220, 38, 38, 0.1);
  color: #b91c1c;
}

.wawa-search-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}
.wawa-search-modal.active {
  display: block;
}

.wawa-search-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
}

.wawa-search-container {
  position: relative;
  max-width: 600px;
  margin: 80px auto 0;
  background: var(--bg);
  border-radius: 16px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  overflow: hidden;
  animation: searchSlideIn 0.2s ease-out;
}

@keyframes searchSlideIn {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.wawa-search-header {
  display: flex;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--border);
  gap: 12px;
}

.wawa-search-input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 18px;
  font-family: inherit;
  background: transparent;
  color: var(--text);
}
.wawa-search-input::placeholder {
  color: var(--text-light);
}

.wawa-search-close {
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  color: var(--text-light);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: background 0.2s, color 0.2s;
}
.wawa-search-close:hover {
  background: var(--border);
  color: var(--text);
}

.wawa-search-results {
  max-height: 400px;
  overflow-y: auto;
  padding: 8px;
}

.wawa-search-results:empty::after {
  content: '';
  display: none;
}

.wawa-search-result {
  display: flex;
  gap: 12px;
  padding: 12px;
  border-radius: 10px;
  text-decoration: none;
  color: var(--text);
  transition: background 0.2s;
}
.wawa-search-result:hover {
  background: var(--light);
  opacity: 1;
}

.wawa-search-result-thumb {
  width: 80px;
  height: 45px;
  border-radius: 6px;
  object-fit: cover;
  flex-shrink: 0;
}

.wawa-search-result-content {
  flex: 1;
  min-width: 0;
}

.wawa-search-result-title {
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.wawa-search-result-desc {
  font-size: 13px;
  color: var(--text-light);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.wawa-search-empty {
  padding: 40px 20px;
  text-align: center;
  color: var(--text-light);
}

.wawa-search-hint {
  padding: 20px;
  text-align: center;
  color: var(--text-light);
  font-size: 14px;
}

/* ===== Inline Search (Desktop) ===== */
.wawa-search-inline {
  display: none;
  position: relative;
  align-items: center;
  gap: 10px;
  background: #fff;
  border: 2px solid #f87171;
  border-radius: 50px;
  padding: 6px 16px 6px 6px;
  margin-left: 12px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(248, 113, 113, 0.1);
}
.wawa-search-inline:hover {
  border-color: #ef4444;
  box-shadow: 0 4px 16px rgba(239, 68, 68, 0.15);
  transform: translateY(-1px);
}
.wawa-search-inline:focus-within {
  border-color: var(--accent);
  box-shadow: 0 4px 20px rgba(220, 38, 38, 0.2);
  transform: translateY(-1px);
}
.wawa-search-inline-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: #f87171;
  border-radius: 50%;
  flex-shrink: 0;
  transition: all 0.3s ease;
}
.wawa-search-inline-icon svg {
  color: #fff;
  width: 16px;
  height: 16px;
}
.wawa-search-inline:hover .wawa-search-inline-icon {
  background: #ef4444;
  transform: scale(1.05);
}
.wawa-search-inline:focus-within .wawa-search-inline-icon {
  transform: scale(1.1);
  background: var(--accent);
}
.wawa-search-inline-input {
  border: none;
  outline: none;
  background: transparent;
  font-size: 14px;
  font-family: inherit;
  color: var(--text);
  width: 140px;
  transition: width 0.3s ease;
}
.wawa-search-inline:focus-within .wawa-search-inline-input {
  width: 180px;
}
.wawa-search-inline-input::placeholder {
  color: #d1d5db;
}

.wawa-search-inline-results {
  display: none;
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  width: 420px;
  max-height: 480px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18);
  z-index: 1000;
}
.wawa-search-inline-results::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--accent), #ef4444);
  border-radius: 16px 16px 0 0;
}
.wawa-search-inline-results.active {
  display: block;
  animation: searchDropIn 0.2s ease-out;
}
@keyframes searchDropIn {
  from { opacity: 0; transform: translateY(-8px); }
  to { opacity: 1; transform: translateY(0); }
}
.wawa-search-inline-results .wawa-search-result {
  display: flex;
  gap: 12px;
  padding: 14px 16px;
  text-decoration: none;
  color: var(--text);
  transition: all 0.2s;
  border-left: 3px solid transparent;
}
.wawa-search-inline-results .wawa-search-result:first-child {
  margin-top: 8px;
}
.wawa-search-inline-results .wawa-search-result:hover {
  background: #fef2f2;
  border-left-color: var(--accent);
  opacity: 1;
}
.wawa-search-inline-results .wawa-search-result-thumb {
  width: 72px;
  height: 42px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid var(--border);
}
.wawa-search-inline-results .wawa-search-result-content {
  flex: 1;
  min-width: 0;
}
.wawa-search-inline-results .wawa-search-result-title {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  margin-bottom: 3px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: var(--text);
}
.wawa-search-inline-results .wawa-search-result:hover .wawa-search-result-title {
  color: var(--accent);
}
.wawa-search-inline-results .wawa-search-result-desc {
  font-size: 12px;
  color: var(--text-light);
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.wawa-search-inline-results .wawa-search-empty,
.wawa-search-inline-results .wawa-search-hint {
  padding: 24px 20px;
  text-align: center;
  color: var(--text-light);
  font-size: 13px;
}
.wawa-search-inline-results .wawa-search-hint::before {
  content: '🔍';
  display: block;
  font-size: 24px;
  margin-bottom: 8px;
}

/* Desktop: show inline, hide button */
@media (min-width: 769px) {
  .wawa-search-btn {
    display: none;
  }
  .wawa-search-inline {
    display: flex;
  }
}
/* Mobile: show button, hide inline */
@media (max-width: 768px) {
  .wawa-search-btn {
    display: flex;
  }
  .wawa-search-inline {
    display: none;
  }
}


/* /css/common/ticker.css */
/* ===== 코인 티커바 ===== */
.ticker-wrap {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  height: 52px;
  background: #f8f9fc;
  border-bottom: 1px solid #d1d5db;
  overflow: hidden;
  white-space: nowrap;
  max-width: 100vw;
}

body {
  margin-top: 52px !important;
}

.ticker {
  display: inline-flex;
  align-items: center;
  height: 100%;
  animation: ticker-scroll 30s linear infinite;
}

.ticker:hover {
  animation-play-state: paused;
}

.ticker-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 20px;
  font-size: 0.85rem;
  color: #1f2937;
  font-weight: 500;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.ticker-item .symbol {
  color: #1a1a2e;
  font-weight: 700;
}

.ticker-item .up {
  color: #16a34a;
}

.ticker-item .down {
  color: #ef4444;
}

@keyframes ticker-scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* === 모바일 === */
@media (max-width: 768px) {
  .ticker-wrap {
    height: 40px;
  }
  body {
    margin-top: 40px !important;
  }
  .ticker-item {
    font-size: 0.72rem;
    padding: 0 12px;
    gap: 4px;
  }
  .ticker {
    animation-duration: 20s;
  }
}


/* /css/common/nav.css */
/* ===== 네비게이션 ===== */

/* 기본 GP 헤더 숨기기 (정적 사이트에서는 불필요하지만 호환용) */
.site-header { display: none !important; }
.main-navigation { display: none !important; }

/* 커스텀 네비게이션 */
.wawa-custom-nav {
  background: #ffffff;
  position: sticky;
  top: 52px;
  border-bottom: 1px solid var(--border);
  z-index: 999;
}

.wawa-nav-container {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  align-items: center;
  height: 70px;
  position: relative;
}

/* 로고 */
.wawa-logo-link {
  display: flex;
  align-items: center;
  text-decoration: none;
  flex-shrink: 0;
}

.wawa-logo-link .wawa-namelogo {
  height: 40px;
  width: auto;
}

/* 햄버거 — 데스크탑 숨김 */
.wawa-hamburger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  margin-left: auto;
  z-index: 1001;
  flex-direction: column;
  gap: 5px;
}

.wawa-hamburger span {
  display: block;
  width: 24px;
  height: 2.5px;
  background: #374151;
  border-radius: 2px;
  transition: all 0.3s;
}

.wawa-hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.wawa-hamburger.active span:nth-child(2) { opacity: 0; }
.wawa-hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

/* 메뉴 — 중앙 */
.wawa-menu {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.wawa-menu > li {
  position: relative;
  list-style: none;
}

.wawa-menu > li > a {
  color: #374151;
  font-size: 18px;
  font-weight: 700;
  padding: 14px 16px;
  border-radius: 6px;
  transition: all 0.2s;
  text-decoration: none;
  display: block;
  white-space: nowrap;
  letter-spacing: -0.2px;
}

.wawa-menu > li > a:hover,
.wawa-menu > li.current-menu-item > a {
  color: var(--accent);
  background: #fef2f2;
}

.wawa-menu > li > a[aria-disabled="true"] {
  cursor: default;
}

/* 드롭다운 화살표 */
.wawa-menu > li.menu-item-has-children > a::after {
  content: " \25BE";
  font-size: 10px;
}

/* 뉴스 상위메뉴는 드롭다운 트리거 전용(하위에 뉴스홈 제공) */

/* 서브메뉴 */
.wawa-menu .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  padding: 6px 0;
  min-width: 180px;
  list-style: none;
  z-index: 100;
}

.wawa-menu > li:hover > .sub-menu,
.wawa-menu > li.sub-open > .sub-menu {
  display: block;
}

.wawa-menu .sub-menu li { list-style: none; }

.wawa-menu .sub-menu li a {
  display: block;
  white-space: nowrap;
  font-size: 18px;
  color: var(--text-light);
  padding: 9px 16px;
  text-decoration: none;
  transition: all 0.2s;
}

.wawa-menu .sub-menu li a:hover {
  color: var(--accent);
  background: #fef2f2;
}

/* 언어 선택 — 오른쪽 */
.wawa-lang-dropdown {
  margin-left: auto;
  flex-shrink: 0;
  position: relative;
}

.wawa-lang-btn {
  font-size: 15px;
  color: #374151;
  padding: 6px 12px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.wawa-lang-btn:hover {
  border-color: var(--accent);
  color: var(--accent);
}

/* 국기 이모지 SVG */
.emoji-flag {
  width: 1.2em;
  height: 1.2em;
  vertical-align: -0.2em;
}

/* 국기 아이콘 (flagcdn) */
.flag-icon {
  width: 20px;
  height: auto;
  vertical-align: middle;
}

.wawa-lang-list {
  display: none;
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 8px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  list-style: none;
  min-width: 150px;
  z-index: 200;
  padding: 6px 0;
}

.wawa-lang-dropdown.open .wawa-lang-list { display: block; }

.wawa-lang-list li a {
  display: block;
  padding: 9px 16px;
  font-size: 18px;
  color: var(--text-light);
  white-space: nowrap;
  transition: all 0.2s;
  text-decoration: none;
}

.wawa-lang-list li a:hover {
  background: #fef2f2;
  color: var(--accent);
}

/* ===== 태블릿 ===== */
@media (max-width: 1024px) {
  .wawa-nav-container { padding: 0 20px; }
  .wawa-menu > li > a { font-size: 15px; padding: 12px 10px; }
}

/* ===== 모바일 ===== */
@media (max-width: 768px) {
  .wawa-custom-nav { top: 40px; }
  .wawa-nav-container { padding: 0 16px; height: 56px; }
  .wawa-logo-link .wawa-namelogo { height: 32px; }

  .wawa-hamburger { display: flex; }

  .wawa-menu {
    display: none;
    position: fixed;
    top: 96px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 16px 0;
    overflow-y: auto;
    transform: none;
    z-index: 1000;
    border-top: 1px solid var(--border);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  }

  .wawa-menu.open { display: flex; }

  .wawa-menu > li > a {
    font-size: 16px;
    padding: 14px 24px;
    border-radius: 0;
  }

  /* split-toggle 모바일 규칙 제거됨 */

  .wawa-menu > li:hover > .sub-menu { display: none; }
  .wawa-menu > li.sub-open > .sub-menu { display: block; }

  .wawa-menu .sub-menu {
    position: static;
    box-shadow: none;
    border: none;
    border-radius: 0;
    padding: 0;
  }

  .wawa-menu .sub-menu li a {
    padding: 10px 24px 10px 40px;
    font-size: 15px;
  }

  .wawa-lang-dropdown { margin-left: 0; margin-right: 8px; }
  .wawa-lang-btn { font-size: 13px; padding: 4px 8px; }
}


/* /css/common/footer.css */
/* ===== 푸터 ===== */
.wawa-footer {
  background: linear-gradient(180deg, #fef2f2 0%, #ffffff 100%);
  border-top: 1px solid var(--border);
  padding: 60px 0 0;
  color: #374151;
  font-size: 16px;
  line-height: 1.6;
}

.wawa-footer-inner {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}

.wawa-footer-top {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}

.wawa-footer-links {
  display: flex;
  gap: 40px;
  flex: 2;
  flex-wrap: wrap;
}

.wawa-footer-bottom {
  text-align: center;
  padding: 24px 0;
  margin-top: 24px;
  color: #9ca3af;
  font-size: 16px;
  border-top: 1px solid var(--border);
}

.wawa-footer-logo {
  height: 44px;
  width: auto;
  margin-bottom: 16px;
}

/* 브랜드 */
.wawa-footer-brand {
  flex: 1.5;
  min-width: 240px;
}

.wawa-footer-brand .footer-logo {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}

.wawa-footer-brand .footer-logo img {
  height: 44px;
  width: auto;
}

.wawa-footer-brand .footer-desc {
  color: var(--text-light);
  font-size: 16px;
  line-height: 1.8;
}

/* 컬럼 */
.wawa-footer-col {
  flex: 1;
  min-width: 120px;
}

.wawa-footer-col h4 {
  font-size: 16px;
  font-weight: 700;
  color: #111827;
  margin: 0 0 18px;
}

.wawa-footer-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wawa-footer-col ul li {
  margin-bottom: 12px;
}

.wawa-footer-col ul li a {
  color: var(--text-light);
  text-decoration: none;
  font-size: 16px;
}

.wawa-footer-col ul li a:hover {
  color: var(--accent);
}

.wawa-footer-col .footer-email {
  color: var(--text-light);
  font-size: 16px;
}

/* 면책조항 */
.wawa-footer-disclaimer {
  max-width: var(--max-width);
  margin: 32px auto 0;
  padding: 0 20px;
}

.wawa-footer-disclaimer-box {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  padding: 16px 20px;
  font-size: 14px;
  color: #4b5563;
  line-height: 1.7;
}

/* 저작권 */
.wawa-footer-copyright {
  text-align: center;
  padding: 24px 0;
  margin-top: 24px;
  color: #9ca3af;
  font-size: 16px;
  border-top: 1px solid var(--border);
}

/* ===== 태블릿 ===== */
@media (max-width: 1024px) {
  .wawa-footer { padding: 40px 0 0; }
  .wawa-footer-inner { gap: 24px; }
  .wawa-footer-brand { flex-basis: 100%; min-width: 100%; }
  .wawa-footer-col { flex: 1; min-width: calc(33% - 24px); }
}

/* ===== 모바일 ===== */
@media (max-width: 768px) {
  .wawa-footer { padding: 32px 0 0; }
  .wawa-footer-inner { gap: 20px; padding: 0 16px; }
  .wawa-footer-brand { min-width: 100%; }
  .wawa-footer-brand .footer-logo img { height: 36px; }
  .wawa-footer-brand .footer-desc { font-size: 14px; }
  .wawa-footer-col { min-width: calc(50% - 20px); flex: unset; }
  .wawa-footer-col h4 { font-size: 14px; margin-bottom: 12px; }
  .wawa-footer-col ul li { margin-bottom: 8px; }
  .wawa-footer-col ul li a { font-size: 14px; }
  .wawa-footer-col .footer-email { font-size: 14px; }
  .wawa-footer-disclaimer { padding: 0 16px; margin-top: 24px; }
  .wawa-footer-disclaimer-box { padding: 12px 14px; font-size: 12px; }
  .wawa-footer-copyright { font-size: 13px; padding: 16px 0; margin-top: 16px; }
}


/* /css/common/scroll-top.css */
/* ===== 맨 위로 버튼 ===== */
.scroll-top-btn {
  position: fixed;
  bottom: 32px;
  right: 32px;
  width: 48px;
  height: 48px;
  background: var(--accent);
  color: #fff;
  border: none;
  border-radius: 50%;
  font-size: 22px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
  z-index: 999;
}

.scroll-top-btn.visible {
  opacity: 1;
  visibility: visible;
}

.scroll-top-btn:hover {
  background: #b91c1c;
}

@media (max-width: 768px) {
  .scroll-top-btn {
    bottom: 20px;
    right: 20px;
    width: 42px;
    height: 42px;
    font-size: 20px;
  }
}


/* /css/components/post-hero.css */
/* ===== 글 상단 Hero (브레드크럼 + 제목 + 설명 + 로고/날짜 + 면책 + 대표이미지) ===== */
.post-hero-wrap {
  background: #f8f9fc;
}

.post-hero {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 20px 40px 28px;
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 32px;
  align-items: start;
}

.post-hero__text {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* 브레드크럼 */
.post-hero__breadcrumb {
  font-size: 13px;
  color: var(--text-light);
  margin-bottom: 12px;
}

.post-hero__breadcrumb a {
  color: var(--text-light);
  text-decoration: none;
}

.post-hero__breadcrumb a:hover {
  color: var(--accent);
}

.post-hero__breadcrumb span {
  margin: 0 6px;
  color: #d1d5db;
}

/* 제목 */
.post-hero__title {
  font-size: 28px;
  font-weight: 800;
  color: var(--dark);
  line-height: 1.4;
  margin: 0 0 12px;
}

/* 설명 */
.post-hero__desc {
  font-size: 16px;
  color: var(--text-light);
  line-height: 1.6;
  margin: 0 0 16px;
}

/* 로고 + 날짜 */
.post-hero__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.post-hero__logo {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  color: var(--dark);
}

.post-hero__logo img {
  width: 24px;
  height: 24px;
}

.post-hero__date {
  font-size: 13px;
  color: var(--text-light);
}

/* 면책조항 */
.post-hero__disclaimer {
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 13px;
  color: #991b1b;
  line-height: 1.6;
  display: flex;
  gap: 8px;
}

.post-hero__disclaimer-icon {
  flex-shrink: 0;
  color: var(--accent);
  font-size: 14px;
}

.post-hero__disclaimer strong {
  color: var(--accent);
}

.post-hero__disclaimer-full {
  display: none;
}

.post-hero__disclaimer.open .post-hero__disclaimer-full {
  display: inline;
}

.post-hero__disclaimer.open .post-hero__disclaimer-toggle {
  display: none;
}

.post-hero__disclaimer-toggle {
  color: var(--accent);
  font-weight: 700;
  font-size: 13px;
  cursor: pointer;
  background: var(--accent);
  color: #fff;
  border: none;
  padding: 2px 10px;
  border-radius: 4px;
  margin-left: 4px;
}

/* 대표이미지 */
.post-hero__image {
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 800 / 425;
  background: #e5e7eb;
  align-self: center;
}

.post-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 태블릿 */
@media (max-width: 1024px) {
  .post-hero {
    grid-template-columns: 1fr 320px;
    gap: 24px;
    padding: 16px 20px 0;
  }

  .post-hero__title { font-size: 24px; }
}

/* 모바일 */
@media (max-width: 768px) {
  .post-hero {
    grid-template-columns: 1fr;
    padding: 14px 16px 0;
    gap: 16px;
  }

  .post-hero__title { font-size: 22px; }
  .post-hero__desc { font-size: 15px; }

  .post-hero__image {
    aspect-ratio: 16 / 9;
    order: -1;
  }
}


/* /css/components/sidebar.css */
/* ===== 페이지 사이드바 (목차 + 최신뉴스 + 최신분석) ===== */

/* 사이드바 컨테이너 */
.page-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding-top: 48px;
}

/* 목차만 sticky */
.sidebar-box--sticky {
  position: sticky;
  top: 110px;
}

/* 공통 박스 */
.sidebar-box {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 20px;
}

/* 제목 */
.sidebar-box__title {
  font-size: 18px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 4px;
}

.sidebar-box__line {
  border-bottom: 3px solid var(--accent);
  width: 100%;
  margin-bottom: 12px;
}

/* ===== 목차 (TOC) ===== */
.sidebar-toc__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-toc__list li {
  padding: 8px 0;
  border-bottom: 1px solid #f3f4f6;
}

.sidebar-toc__list li:last-child {
  border-bottom: none;
}

.sidebar-toc__list a {
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
  text-decoration: none;
  line-height: 1.5;
  display: block;
}

.sidebar-toc__list a:hover {
  color: var(--accent);
}

/* 하위 항목 들여쓰기 */
.sidebar-toc__list .toc-sub {
  padding-left: 16px;
  font-size: 13px;
  color: var(--text-light);
}

/* ===== 뉴스/분석 리스트 ===== */
.sidebar-news__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-news__list li {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid #f3f4f6;
}

.sidebar-news__list li:last-child {
  border-bottom: none;
}

.sidebar-news__thumb {
  width: 64px;
  height: 48px;
  border-radius: 6px;
  background: #e5e7eb;
  flex-shrink: 0;
  overflow: hidden;
}

.sidebar-news__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sidebar-news__info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.sidebar-news__cat {
  font-size: 11px;
  font-weight: 700;
  color: var(--accent);
}

.sidebar-news__info a {
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  text-decoration: none;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.sidebar-news__info a:hover {
  color: var(--accent);
}

.sidebar-news__empty {
  color: #9ca3af;
  font-size: 13px;
}

/* ===== 모바일: 사이드바 숨김 ===== */
@media (max-width: 768px) {
  .page-sidebar {
    display: none;
  }
}


/* /css/components/post-content.css */
/* 2컬럼 레이아웃 (본문 + 사이드바) */
.post-content-wrap {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 20px 60px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: 40px;
}

@media (max-width: 1024px) {
  .post-content-wrap {
    grid-template-columns: 1fr;
    padding: 0 20px 40px;
  }
}

/* ===== post-content.css — 본문 콘텐츠 스타일 (라이트 테마) ===== */

.post-content {
  font-size: 16px;
  line-height: 1.85;
  color: #374151;
  word-break: keep-all;
}

.post-content h2 {
  font-size: 24px;
  font-weight: 700;
  color: #1a1a2e;
  margin: 48px 0 18px;
  padding-bottom: 10px;
  scroll-margin-top: 120px;
  background-image: linear-gradient(90deg, #DC2626 0%, transparent 100%);
  background-size: 100% 3px;
  background-position: bottom;
  background-repeat: no-repeat;
}

.post-content h3 {
  font-size: 20px;
  font-weight: 700;
  color: #1a1a2e;
  margin: 36px 0 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid #d1d5db;
}

.post-content h4 {
  font-size: 17px;
  font-weight: 600;
  color: #1a1a2e;
  margin: 28px 0 10px;
}

.post-content p {
  margin: 0 0 18px;
}

.post-content a {
  color: #DC2626;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.post-content a:hover {
  color: #b91c1c;
}

.post-content ul,
.post-content ol {
  margin: 0 0 18px;
  padding-left: 1.5em;
}

.post-content li {
  margin-bottom: 8px;
}

.post-content strong {
  color: #1a1a2e;
  font-weight: 600;
}

/* 테이블 */
.post-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0 28px;
  font-size: 14px;
  line-height: 1.6;
}

.post-content thead th {
  background: #f8f9fc;
  color: #6b7280;
  font-weight: 600;
  padding: 12px 14px;
  text-align: left;
  border-bottom: 2px solid #e5e7eb;
  white-space: nowrap;
}

.post-content tbody td {
  padding: 10px 14px;
  border-bottom: 1px solid #e5e7eb;
  vertical-align: top;
  color: #1a1a2e;
}

.post-content tbody tr:hover {
  background: #f8f9fc;
}

.table-responsive {
  overflow-x: auto;
}

/* FAQ */
.post-content details.faq-item {
  border-bottom: 1px solid #e5e7eb;
  padding: 16px 0;
}

.post-content details.faq-item summary {
  font-weight: 600;
  color: #1a1a2e;
  font-size: 16px;
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  gap: 8px;
}

.post-content details.faq-item summary::before {
  content: "+";
  font-size: 20px;
  font-weight: 700;
  color: #DC2626;
  flex-shrink: 0;
  width: 24px;
  text-align: center;
}

.post-content details[open].faq-item summary::before {
  content: "−";
}

.post-content details.faq-item p {
  margin: 12px 0 0 32px;
  color: #374151;
  font-size: 15px;
  line-height: 1.7;
}

/* 반응형 */
@media (max-width: 768px) {
  .post-content {
    overflow-x: hidden;
  }

  .post-content h2 {
    font-size: 20px;
  }

  .post-content h3 {
    font-size: 17px;
  }

  .post-content table {
    font-size: 12px;
  }

  .post-content thead th,
  .post-content tbody td {
    padding: 8px 10px;
  }
}

/* 본문 이미지 */
.post-body-image {
  margin: 32px 0;
  border-radius: 12px;
  overflow: hidden;
}
.post-body-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
}

/* Callout 박스 */
.callout {
  margin: 24px 0;
  padding: 20px 24px;
  border-radius: 12px;
  border-left: 4px solid;
}
.callout__title {
  font-weight: 700;
  font-size: 15px;
  margin-bottom: 8px;
}
.callout__text {
  font-size: 15px;
  line-height: 1.7;
}

/* 파란색 - 핵심 포인트 */
.callout--blue {
  background: #eff6ff;
  border-color: #3b82f6;
}
.callout--blue .callout__title {
  color: #1d4ed8;
}
.callout--blue .callout__text {
  color: #1e40af;
}

/* 노란색 - 주의 */
.callout--yellow {
  background: #fefce8;
  border-color: #eab308;
}
.callout--yellow .callout__title {
  color: #a16207;
}
.callout--yellow .callout__text {
  color: #854d0e;
}

/* 초록색 - 종합 판단 */
.callout--green {
  background: #f0fdf4;
  border-color: #22c55e;
}
.callout--green .callout__title {
  color: #15803d;
}
.callout--green .callout__text {
  color: #166534;
}


/* /css/components/exchange-hub.css */
/* ===== 거래소 허브 페이지 전용 CSS (WP 1:1 매칭) ===== */

/* 페이지 전체 밝은 배경 강제 */
.exchange-hub-body .post-content,
.exchange-hub-body .post-content * { color: #1a1a2e; }
.exchange-hub-body .post-content { background: transparent; }
.exchange-hub-body .post-content h2 { border-bottom: none !important; padding-bottom: 0 !important; }
.exchange-hub-body .post-content h3 { padding-bottom: 8px; border-bottom: 1px solid #d1d5db; }

/* ===== 카드 그리드 (TOP 4) ===== */
.ex-cards-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 32px 0; overflow: visible; }
.ex-card { background: #fff; border-radius: 16px; border-top: 4px solid #e53e3e; box-shadow: 0 2px 12px rgba(0,0,0,.07); padding: 28px 24px 24px; position: relative; transition: transform .25s, box-shadow .25s; display: flex; flex-direction: column; align-items: center; text-align: center; }
.ex-card:hover { transform: translateY(-6px); box-shadow: 0 12px 32px rgba(229,62,62,.15); }
.ex-card .ex-rank { position: absolute; top: -16px; left: 20px; width: 36px; height: 36px; background: #e53e3e; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 15px; box-shadow: 0 2px 8px rgba(229,62,62,.3); }
.ex-card .ex-logo { width: 140px; height: 56px; object-fit: contain; margin: 8px 0 4px; }
.ex-card .ex-name { font-size: 22px; font-weight: 800; color: #1a202c; margin: 6px 0 4px; letter-spacing: -.3px; }
.ex-card .ex-score { display: none !important; }
.ex-card .ex-tagline { color: #4a5568; font-size: 14px; margin: 8px 0 4px; font-weight: 600; }
.ex-card .ex-stats { width: 100%; margin: 12px 0; font-size: 13px; color: #718096; }
.ex-card .ex-stat-row { display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid #f0f0f0; }
.ex-card .ex-stat-row:last-child { border-bottom: none; }
.ex-card .ex-stat-val { font-weight: 700; color: #2d3748; }
.ex-card .ex-btns { display: flex; gap: 10px; margin-top: auto; padding-top: 16px; width: 100%; }
.ex-card .ex-btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; padding: 10px 12px; border-radius: 8px; font-size: 13px; font-weight: 700; transition: .2s; text-decoration: none !important; }
.ex-card .ex-btn-review { background: #f7fafc; color: #2d3748; border: 1.5px solid #e2e8f0; }
.ex-card .ex-btn-review:hover { background: #edf2f7; border-color: #cbd5e0; }
.ex-card .ex-btn-signup { background: #e53e3e; border: 1.5px solid #e53e3e; color: #fff !important; }
.ex-card .ex-btn-signup:hover { background: #c53030; border-color: #c53030; }

/* ===== 비교표 ===== */
.wawa-table-scroll { overflow-x: auto; margin: 1.5em 0; max-width: 100%; }
.ex-compare-table { width: 100%; border-collapse: separate; border-spacing: 0; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 12px rgba(0,0,0,.06); margin: 24px 0; font-size: 14px; }
.ex-compare-table thead tr { background: #f8f9fc; }
.ex-compare-table thead th { padding: 14px 12px; font-weight: 700; font-size: 13px; text-align: center; border-bottom: 2px solid #e5e7eb; color: #6b7280 !important; }
.ex-compare-table thead th:first-child { text-align: left; padding-left: 20px; color: #6b7280 !important; }
.ex-compare-table tbody td,
.ex-compare-table tbody th { padding: 14px 12px; border-bottom: 1px solid #e5e7eb; text-align: center; vertical-align: middle; color: #1a1a2e !important; }
.ex-compare-table tbody th { text-align: left; padding-left: 20px; font-weight: 700; color: #1a1a2e !important; background: #fff; }
.ex-compare-table tbody tr:hover td { background: #fff5f5; }
.ex-compare-table .ex-tbl-logo { width: 80px; height: 28px; object-fit: contain; display: block; margin: 0 auto 4px; }
.ex-compare-table .ex-highlight { color: #e53e3e; font-weight: 800; }

/* ===== 거래소 섹션 박스 ===== */
.wawa-exchange-section-box { background: #fff; border: 1px solid #e5e7eb; border-radius: 16px; padding: 32px 36px; margin: 32px 0; box-shadow: 0 2px 8px rgba(0,0,0,.06); display: flex; flex-direction: column; }
.wawa-exchange-section-box h2 { margin-top: 0 !important; padding-top: 0 !important; border-top: none !important; }
.ex-section-logo { text-align: center; margin: 0 0 16px; order: -1; }
.ex-section-logo img { width: 60px; height: 60px; object-fit: contain; }

/* ===== 추천 그리드 ===== */
.ex-investor-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 16px !important; margin: 24px 0; }
.ex-investor-grid .ex-investor-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
.ex-investor-card { background: #f8f9fc !important; border: 1px solid #e5e7eb !important; border-left: 4px solid #DC2626 !important; border-radius: 8px !important; padding: 20px 24px !important; box-shadow: none !important; }
.ex-investor-card:hover { border-left-color: #b91c1c !important; background: #fff !important; }
.ex-inv-icon { display: none !important; }
.ex-inv-type { font-size: 15px !important; font-weight: 700 !important; color: #1a1a2e !important; margin-bottom: 6px !important; }
.ex-inv-pick { font-size: 14px !important; font-weight: 600 !important; color: #DC2626 !important; margin-bottom: 8px !important; }
.ex-inv-reason { font-size: 13px !important; color: #6b7280 !important; line-height: 1.5 !important; }

/* ===== FAQ 아코디언 ===== */
.faq-list { margin: 1.5em 0; }
.faq-list details.faq-item { border: 1px solid #e5e7eb; border-radius: 10px; margin-bottom: 10px; padding: 0; box-shadow: 0 1px 3px rgba(0,0,0,.04); transition: box-shadow .2s; overflow: hidden; }
.faq-list details.faq-item[open] { box-shadow: 0 3px 10px rgba(0,0,0,.08); }
.faq-list details.faq-item summary { padding: 16px 20px; font-weight: 700; font-size: 1.02em; color: #1f2937; cursor: pointer; list-style: none; display: flex; align-items: center; gap: 12px; transition: background .2s; }
.faq-list details.faq-item summary::-webkit-details-marker { display: none; }
.faq-list details.faq-item summary::before { content: "+"; display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; min-width: 26px; background: #f3f4f6; border-radius: 50%; font-size: 1.1em; font-weight: 700; color: #DC2626; transition: .2s; }
.faq-list details.faq-item[open] summary::before { content: "−"; background: #DC2626; color: #fff; }
.faq-list details.faq-item summary:hover { background: #fafafa; }
.faq-list details.faq-item > p,
.faq-list details.faq-item .faq-answer { padding: 0 20px 16px; margin: 0; color: #4b5563; line-height: 1.8; border-top: 1px solid #f0f0f0; }

/* ===== 팁 박스 ===== */
.ex-tip-box { background: linear-gradient(135deg, #fff5f5, #fed7d7); border-left: 4px solid #e53e3e; border-radius: 0 12px 12px 0; padding: 16px 20px; margin: 20px 0; font-size: 14px; color: #742a2a; }
.ex-tip-box strong { color: #c53030; }

/* ===== 콜아웃 ===== */
.wawa-callout { background: #eff6ff; border-left: 4px solid #3b82f6; border-radius: 0 12px 12px 0; padding: 20px 24px; margin: 1.5em 0; line-height: 1.75; font-size: .98em; color: #1e3a5f; }
.wawa-callout strong { color: #1e40af; }

/* ===== 버튼 ===== */
.btn-primary, a.btn-primary { display: inline-block; background: linear-gradient(135deg, #DC2626, #b91c1c); padding: 15px 36px; border-radius: 10px; font-weight: 700; font-size: 1.08em; transition: .3s; box-shadow: 0 4px 14px rgba(220,38,38,.3); text-align: center; margin: 1em 0; color: #fff !important; text-decoration: none !important; }
.btn-primary:hover, a.btn-primary:hover { background: linear-gradient(135deg, #b91c1c, #991b1b); transform: translateY(-2px); box-shadow: 0 6px 20px rgba(220,38,38,.4); }
.btn-secondary, a.btn-secondary { display: inline-block; background: #f3f4f6; padding: 12px 24px; border-radius: 8px; font-weight: 700; transition: .2s; border: 1px solid #e5e7eb; color: #1f2937 !important; text-decoration: none !important; }
.btn-secondary:hover, a.btn-secondary:hover { background: #e5e7eb; }

/* ===== CTA 그리드 ===== */
.ex-cta-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 24px 0; }
.ex-cta-card { display: flex; align-items: center; gap: 14px; background: #fff; border-radius: 12px; padding: 16px 20px; box-shadow: 0 2px 10px rgba(0,0,0,.06); transition: .25s; border: 2px solid transparent; text-decoration: none !important; }
.ex-cta-card:hover { border-color: #e53e3e; transform: translateY(-3px); box-shadow: 0 8px 24px rgba(229,62,62,.12); }
.ex-cta-card img { width: 100px; height: 36px; object-fit: contain; }
.ex-cta-card .ex-cta-text { font-weight: 700; color: #e53e3e; font-size: 14px; }
.ex-cta-card .ex-cta-sub { font-size: 12px; color: #718096; }

/* ===== 본문 테이블 ===== */
.exchange-hub-body .post-content table { background: #fff; }
.exchange-hub-body .post-content th { background: #f8f9fc; color: #1a1a2e; }
.exchange-hub-body .post-content td { color: #1a1a2e; background: #fff; }

/* ===== 이미지 플레이스홀더 ===== */
.review-img-placeholder { border: 2px dashed #d1d5db; border-radius: 12px; background: #f9fafb; padding: 40px 20px; text-align: center; margin: 24px 0; display: flex; flex-direction: column; align-items: center; gap: 8px; color: #9ca3af; font-size: 15px; }

/* ===== h2 왼쪽 빨간 세로줄 ===== */
.exchange-hub-body .post-content h2 {
  border-left: none !important;
  padding-left: 0 !important;
  border-bottom: none !important;
  padding-bottom: 8px !important;
  scroll-margin-top: 120px;
  background-image: linear-gradient(90deg, #DC2626 0%, transparent 100%);
  background-size: 100% 3px;
  background-position: bottom left;
  background-repeat: no-repeat;
}
.wawa-exchange-section-box h2 {
  border-left: none !important;
  padding-left: 0 !important;
}

/* ===== 리스트 불릿 빨간색 ===== */
.exchange-hub-body .post-content ul { list-style: none; padding-left: 0; }
.exchange-hub-body .post-content ul li { padding-left: 20px; position: relative; margin-bottom: 6px; }
.exchange-hub-body .post-content ul li::before { content: "•"; position: absolute; left: 4px; color: #DC2626; font-weight: 700; font-size: 1.2em; line-height: 1.4; }
.ex-investor-card ul, .faq-list ul { list-style: disc; padding-left: 1.5em; }
.ex-investor-card ul li::before, .faq-list ul li::before { display: none; }

/* ===== "이 글에서 알 수 있는 것" 박스 ===== */
.review-summary-box {
  border: none;
  border-radius: 12px;
  padding: 28px 32px;
  margin: 24px 0;
  background: #ecfdf5;
  box-shadow: none;
}
/* 콜아웃 박스 (뉴스 기사용) */
.callout { border-radius: 10px; padding: 20px 24px; margin: 20px 0; border-left: 4px solid; line-height: 1.7; font-size: 15px; }
.callout strong { font-weight: 700; }
.callout-blue { background: #eff6ff; border-left-color: #3b82f6; color: #1e3a5f; }
.callout-yellow { background: #fefce8; border-left-color: #d97706; color: #713f12; }
.callout-green { background: #ecfdf5; border-left-color: #16a34a; color: #14532d; }
.review-summary-box h2 {
  border: none !important;
  padding-left: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0;
  font-size: 1.2em;
  color: #16a34a !important;
  background-image: none !important;
}
.review-summary-box ul { list-style: none; padding-left: 0; }
.review-summary-box ul li { padding-left: 28px; position: relative; margin-bottom: 12px; line-height: 1.6; }
.review-summary-box ul li::before { content: "✔" !important; position: absolute; left: 4px; color: #16a34a !important; font-weight: 700; font-size: 1em; }

/* ===== 결론 박스 ===== */
.conclusion-card {
  background: #f8f9fc;
  border-radius: 12px;
  padding: 28px 32px;
  margin: 20px 0;
  border: 1px solid #e5e7eb;
  border-left: 4px solid #DC2626;
}
/* 결론 넘버링 */
.conclusion-points { margin-top: 16px; }
.conclusion-point { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-top: 1px solid #e5e7eb; font-size: 15px; line-height: 1.6; color: #1a1a2e; }
.conclusion-point:first-child { border-top: none; }
.conclusion-num { flex-shrink: 0; width: 28px; height: 28px; background: #DC2626; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 13px; }

/* ===== 테이블 th 좌측 bold 강화 ===== */
.ex-compare-table tbody th {
  font-weight: 700;
  color: #1a1a2e;
}
.ex-compare-table tbody td { border-bottom: 1px solid #e5e7eb; color: #1a1a2e !important; }
.ex-compare-table tbody td strong,
.ex-compare-table tbody th strong { color: #1a1a2e !important; }
.ex-compare-table .ex-highlight { color: #e53e3e !important; font-weight: 800; }

/* ===== 핵심요약 박스 ===== */
.summary-box { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px; background: #f8f9fc !important; border-radius: 12px; padding: 14px; margin: 16px 0; border: 1px solid #e5e7eb; }
.summary-item { min-width: 0; width: 100%; }
.highlight-bar { display: flex; justify-content: space-around; background: #f8f9fc; border: 1px solid #e5e7eb; border-radius: 12px; padding: 24px 16px; margin: 24px 0; }
.highlight-item { text-align: center; }
.highlight-num { display: block; font-size: 24px; font-weight: 800; color: #DC2626; }
.highlight-desc { font-size: 13px; color: #6b7280; margin-top: 4px; }
.summary-item { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 12px 10px; background: #fff !important; border-radius: 10px; border: 1px solid #e5e7eb; gap: 4px; min-width: 0; overflow: hidden; }
.summary-label { color: #6b7280 !important; font-size: 12px; font-weight: 500; max-width: 100%; word-break: break-word; overflow-wrap: break-word; }
.summary-value { font-weight: 800; color: #DC2626 !important; font-size: 16px; display: block; width: 100%; max-width: 100%; white-space: normal; line-height: 1.4; word-break: break-word; overflow-wrap: anywhere; }

/* ===== 장단점 박스 ===== */
.pros-cons { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 20px 0; }
.pros-box, .cons-box { border-radius: 12px; padding: 24px; }
.pros-box { background: #ecfdf5; border: 1px solid #a7f3d0; }
.cons-box { background: #fef2f2; border: 1px solid #fecaca; }
.pros-box h3, .cons-box h3 { margin-top: 0; border-bottom: none !important; }
.pros-box h3 { color: #16a34a; }
.cons-box h3 { color: #dc2626; }
.pros-box ul li::before { color: #16a34a !important; }
.cons-box ul li::before { color: #dc2626 !important; }

/* ===== 가입 단계 스텝 ===== */
.step-list { counter-reset: step; list-style: none; padding-left: 0; }
.step-list > li { counter-increment: step; position: relative; padding-left: 48px; margin-bottom: 24px; }
.step-list > li::before { content: counter(step); position: absolute; left: 0; top: 0; width: 36px; height: 36px; background: #DC2626; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 15px; }

/* ===== 반응형 ===== */
/* ===== 하이라이트 바 (위의 정의로 통합) ===== */

/* ===== 서비스 카드 ===== */
.service-card { background: #fff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 24px; margin: 16px 0; box-shadow: 0 2px 8px rgba(0,0,0,.04); }
.service-card h3 { display: flex; align-items: center; gap: 10px; margin-top: 0 !important; border-bottom: none !important; padding-bottom: 0 !important; }
.service-icon { font-size: 24px; }

/* ===== 보안 그리드 ===== */
.security-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 20px 0; min-width: 0; }
.security-card { background: #f8f9fc; border: 1px solid #e5e7eb; border-radius: 10px; padding: 20px; min-width: 0; overflow: hidden; }
.security-card h3 { margin: 0 0 8px 0; font-size: 15px; color: #1a1a2e; word-break: break-word; overflow-wrap: break-word; }
.security-card strong { color: #DC2626 !important; display: block; margin-bottom: 6px; font-size: 15px; }
.security-card p { margin: 0; color: #4b5563 !important; font-size: 14px; line-height: 1.6; word-break: break-word; overflow-wrap: break-word; }

/* ===== 팁 그리드 ===== */
.tip-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 20px 0; min-width: 0; }
.tip-card { background: #fff; border: 1px solid #e5e7eb; border-left: 3px solid #DC2626; border-radius: 0 10px 10px 0; padding: 16px 20px; min-width: 0; overflow: hidden; }
.tip-card h3 { margin: 0 0 8px 0; font-size: 15px; color: #1a1a2e; word-break: break-word; overflow-wrap: break-word; }
.tip-card p { margin: 0; font-size: 14px; line-height: 1.6; word-break: break-word; overflow-wrap: break-word; }
.tip-card strong { color: #DC2626 !important; }

/* ===== 스텝 리스트 개선 ===== */
.step-list { counter-reset: step; list-style: none; padding-left: 0; }
.step-list > li { counter-increment: step; position: relative; padding: 20px 20px 20px 56px !important; margin-bottom: 24px; background: #f8f9fc; border-radius: 12px; border: 1px solid #e5e7eb; }
.step-list > li::before { content: counter(step); position: absolute; left: 16px; top: 20px; width: 32px; height: 32px; background: #DC2626; color: #fff !important; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; }
.step-list > li h3 { margin-top: 0 !important; border-bottom: none !important; padding-bottom: 0 !important; font-size: 1.05em; }
/* step-item div 방식 */
.step-item { display: flex; gap: 16px; align-items: flex-start; padding: 20px; margin-bottom: 12px; background: #f8f9fc; border-radius: 12px; border: 1px solid #e5e7eb; }
.step-number { flex-shrink: 0; width: 32px; height: 32px; background: #DC2626; color: #fff !important; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 14px; }
.step-content h4 { margin: 0 0 6px 0; font-size: 15px; color: #1a1a2e; }
.step-content p { margin: 0; font-size: 14px; color: #4b5563; line-height: 1.6; }

/* ===== 비교 테이블 하이라이트 배경 ===== */
.ex-compare-table td.ex-highlight { background: #fff5f5 !important; color: #e53e3e !important; font-weight: 800; }

/* ===== 반응형 ===== */
@media (max-width: 768px) {
  .ex-cards-grid, .ex-investor-grid, .ex-cta-grid, .pros-cons { grid-template-columns: 1fr; }
  .summary-box {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .summary-item {
    min-width: 0 !important;
    width: 100% !important;
  }
  .ex-card .ex-logo { width: 120px; height: 48px; }
  .ex-card .ex-name { font-size: 18px; }
  .ex-compare-table { font-size: 12px; }
  .ex-compare-table thead th, .ex-compare-table tbody td, .ex-compare-table tbody th { padding: 8px 6px; }
  .ex-compare-table .ex-tbl-logo { width: 60px; height: 22px; }
  .wawa-exchange-section-box { padding: 24px 18px; }
  .highlight-bar { flex-direction: row; flex-wrap: wrap; gap: 16px; padding: 20px; }
  .highlight-item { flex: 1 1 40%; }
  .highlight-num { font-size: 20px; }
  .security-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .tip-grid { grid-template-columns: 1fr !important; }

  /* 거래소 리뷰 인라인 그리드 오버라이드 */
  .exchange-hub-body > div[style*="grid-template-columns"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 16px 16px 40px !important;
    gap: 12px !important;
  }
}


/* /css/components/hub-cards.css */
/* ===== 허브 페이지 공통 (카드 그리드 + 필터) ===== */

/* 히어로 */
.hub-hero {
  text-align: center;
  padding: 60px 0 40px;
  max-width: var(--max-width);
  margin: 0 auto;
}
.hub-hero h1,
.hub-hero h2 {
  font-size: 32px;
  font-weight: 800;
  color: #1a1a2e;
  background-image: none !important;
  padding-bottom: 0 !important;
}
.hub-hero h1 .accent,
.hub-hero h2 .accent {
  color: #DC2626;
}
.hub-hero p {
  font-size: 16px;
  color: #6b7280;
  margin-top: 12px;
}
.hub-hero-line {
  width: 60px;
  height: 3px;
  background: #DC2626;
  margin: 20px auto 0;
  border-radius: 2px;
}

/* 필터 탭 */
.hub-filter-tabs {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.hub-filter-tab {
  padding: 10px 24px;
  border-radius: 50px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
  background: #fff;
  border: 1px solid #d1d5db;
  color: #374151;
}
.hub-filter-tab:hover {
  border-color: #DC2626;
  color: #DC2626;
}
.hub-filter-tab.active {
  background: #DC2626;
  border: 1px solid #DC2626;
  color: #fff;
}

/* 카드 그리드 */
.hub-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-top: 40px;
}

/* 카드 */
.hub-card {
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  border: 1px solid #d1d5db;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
  cursor: pointer;
  text-decoration: none;
  color: inherit;
  display: block;
}
.hub-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  border-color: #DC2626;
}

/* 썸네일 */
.hub-card-thumb {
  position: relative;
  padding-top: 52%;
  overflow: hidden;
}
.hub-card-thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 뱃지 */
.hub-card-badge {
  position: absolute;
  bottom: 12px;
  left: 12px;
  background: #DC2626;
  color: #fff;
  padding: 4px 12px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
}

/* 바디 */
.hub-card-body {
  padding: 16px 20px;
  border-top: 1px solid #d1d5db;
}

/* 제목 */
.hub-card-title {
  font-size: 20px;
  font-weight: 700;
  color: #1a1a2e;
  line-height: 1.5;
  margin: 0 0 8px;
  min-height: 60px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* 날짜 */
.hub-card-date {
  font-size: 13px;
  color: #9ca3af;
}

/* 더보기 버튼 */
.hub-load-more {
  display: block;
  margin: 48px auto 0;
  padding: 14px 48px;
  border-radius: 50px;
  border: 2px solid #DC2626;
  background: #fff;
  color: #DC2626;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s;
}
.hub-load-more:hover {
  background: #DC2626;
  color: #fff;
}

/* 반응형 */
@media (max-width: 1024px) {
  .hub-card-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 768px) {
  .hub-card-grid {
    grid-template-columns: 1fr;
  }
  .hub-hero {
    padding: 40px 20px 24px;
  }
  .hub-hero h1 {
    font-size: 24px;
  }
}


/* /css/components/legal.css */
/* ===== 법적 페이지 (이용약관, 개인정보, 면책조항) ===== */
.wawa-legal {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 40px 60px;
}

.wawa-legal__page-title {
  font-size: 28px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 24px;
}

.wawa-legal__content h2 {
  font-size: 22px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border);
}

.wawa-legal__content h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--accent);
  margin: 32px 0 12px;
  padding-left: 12px;
  border-left: 4px solid var(--accent);
}

.wawa-legal__content .legal-date {
  font-size: 14px;
  color: var(--text-light);
  margin-bottom: 20px;
}

.wawa-legal__content .legal-notice {
  background: #fef2f2;
  border-left: 4px solid var(--accent);
  padding: 14px 18px;
  margin-bottom: 28px;
  font-size: 15px;
  color: var(--text);
  border-radius: 0 8px 8px 0;
}

.wawa-legal__content p {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text);
  margin: 0 0 14px;
}

.wawa-legal__content ul, .wawa-legal__content ol {
  margin: 0 0 14px;
  padding-left: 24px;
}

.wawa-legal__content li {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text);
  margin-bottom: 4px;
}

.wawa-legal__content a {
  color: var(--accent);
  text-decoration: underline;
}

/* 모바일 */
@media (max-width: 768px) {
  .wawa-legal { padding: 24px 16px 40px; }
  .wawa-legal__page-title { font-size: 22px; }
  .wawa-legal__content h2 { font-size: 18px; }
  .wawa-legal__content h3 { font-size: 16px; }
}

/* ===== community fallback (temporary) ===== */
.community-page .wawa-legal{max-width:1200px;padding:0 0 60px}
.community-page .wawa-legal__page-title{display:none}
.community-page .wawa-legal__content{max-width:1100px;margin:0 auto;padding:0 14px;background:transparent}
.community-page .page-sidebar .sidebar-box--sticky{position:sticky;top:110px}

.community-hero{margin:8px auto 14px;max-width:1100px;background:#fff;border-bottom:1px solid #e5e7eb}
.community-hero__inner{padding:18px 4px 14px}
.community-hero__title{margin:0;font-size:30px;font-weight:800;line-height:1.25;color:#111827;letter-spacing:-0.02em}
.community-hero__desc{margin:6px 0 0;color:#6b7280;font-size:14px;line-height:1.45}

.community-wrap{color:#0f172a}
.community-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.community-sub{font-size:13px;color:#64748b;margin:0}
.community-btn{border:none;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}
.community-btn-red{background:#dc2626;color:#fff}
.community-tabs-row{display:flex;align-items:center;gap:10px;margin:12px 0 16px}
.community-tabs{display:flex;gap:8px;overflow:auto;flex:1;min-width:0;padding-bottom:4px}
.community-tab{border:1px solid #dbe2ea;background:#fff;border-radius:999px;padding:8px 14px;font-size:15px;font-weight:700;letter-spacing:-0.01em;white-space:nowrap;cursor:pointer}
.community-tab.active{background:#dc2626;color:#fff;border-color:#dc2626}
.community-tabs-write{flex-shrink:0}
.community-search{flex:0 0 240px;max-width:38vw;border:1px solid #dbe2ea;border-radius:10px;padding:9px 12px;font-size:14px;outline:none;background:#fff}
.community-search:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.community-board{background:#fff;border:1px solid #dbe2ea;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px rgba(15,23,42,.04)}
.community-board table{width:100%;border-collapse:collapse;table-layout:fixed}
.community-board thead th{background:#f8fafc;color:#334155;font-size:13px;font-weight:800;padding:12px 10px;border-bottom:1px solid #e2e8f0}
.community-board tbody td{padding:12px 10px;border-bottom:1px solid #eef2f7;font-size:14px;color:#1e293b}
.community-board tbody tr:hover{background:#fafcff}
.community-board tbody tr.notice{background:#fff7f7}
.col-no{width:90px;text-align:center;color:#64748b}
.col-title{width:auto}.col-author{width:170px;text-align:center}.col-date{width:110px;text-align:center;color:#64748b}.col-views{width:80px;text-align:center;color:#64748b}.col-like{width:80px;text-align:center;color:#64748b}
.t-title{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.meta-mobile{display:none}
.c-badge{font-size:11px;font-weight:900;padding:3px 8px;border-radius:999px;flex-shrink:0}.b-notice{background:#fee2e2;color:#b91c1c}.b-hot{background:#ffedd5;color:#9a3412}
.txt,.community-board .txt,.community-board a.txt,.community-board a.txt:visited{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400 !important;color:#111827 !important;text-decoration:none !important}.community-board a.txt:hover,.community-board a.txt:focus,.community-board a.txt:active{color:#111827 !important;text-decoration:none !important}.community-board a.txt.operator-post,.txt.operator-post{font-weight:800 !important;color:#111827 !important;text-decoration:none !important}.meta-inline{font-size:12px;color:#94a3b8;margin-left:6px}
.community-foot{display:flex;justify-content:center;align-items:center;padding:12px;border-top:1px solid #e2e8f0;background:#fbfdff}
.community-pager{display:flex;gap:6px;align-items:center}
.p{min-width:32px;height:32px;border:1px solid #dbe2ea;background:#fff;border-radius:8px;font-weight:800;cursor:pointer}
.p.active{background:#dc2626;color:#fff;border-color:#dc2626}
.community-fab{display:none;position:fixed;right:16px;bottom:20px;z-index:30}.community-fab .community-btn{border-radius:999px;box-shadow:0 10px 24px rgba(0,0,0,.2)}

.community-modal{position:fixed;inset:0;background:rgba(2,6,23,.5);display:none;align-items:flex-end;justify-content:center;z-index:40}
.community-modal.open{display:flex}
.community-panel{background:#fff;width:100%;max-width:820px;border-radius:18px 18px 0 0;padding:20px;max-height:88vh;overflow:auto}
.community-field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.community-field input,.community-field select,.community-field textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;font-size:14px}.community-field textarea{min-height:170px}
.community-actions{display:flex;gap:8px;justify-content:flex-end}

/* 커뮤니티 본문 이미지는 너무 크게 보이지 않도록 제한 */
.community-page .post-body-image{margin:18px 0;text-align:center;overflow:visible}
.community-page .post-body-image img{width:min(100%, 720px);margin:0 auto;border-radius:10px}

@media (min-width:769px){
  .community-modal{align-items:center}
  .community-panel{border-radius:18px;max-width:900px;padding:24px}
}

@media (max-width:900px){.col-author,.col-views,.col-like{display:none}.col-date{width:90px}}
@media (max-width:768px){
  .community-hero{margin:6px auto 10px;border-radius:0;border-bottom:1px solid #e5e7eb}
  .community-hero__inner{padding:14px 2px 10px}
  .community-hero__title{font-size:24px}
  .community-hero__desc{font-size:13px;line-height:1.4}

  .community-tabs-row{gap:8px;flex-wrap:wrap}
  .community-tabs{flex:1 1 100%;overflow:visible;flex-wrap:wrap;gap:6px}
  .community-tab{padding:7px 11px;font-size:13px}
  .community-tabs-write{padding:8px 11px;font-size:13px}
  .community-search{flex:1 1 100%;max-width:none;order:3}

  .community-board{border-radius:12px}
  .community-board thead{display:none}
  .community-board table,.community-board tbody,.community-board tr,.community-board td{display:block;width:100%}
  .community-board tbody td{border:none;padding:0}
  .community-board tbody tr{border-bottom:1px solid #eef2f7;padding:12px}

  .col-no,.col-author,.col-date,.col-views,.col-like{display:none !important}
  .col-title .t-title{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
  .txt{font-size:15px;line-height:1.45;max-width:100%}
  .meta-mobile{display:block;font-size:12px;color:#64748b;margin-top:6px}

  .community-foot{padding:10px}
  .community-fab{display:block}
  .community-modal{align-items:flex-end}
  .community-panel{padding:16px}
  .community-comment-item{padding:9px 10px}
  .community-comment-actions{flex-wrap:wrap;gap:6px !important}
}

.community-write-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.community-write-toolbar button{border:1px solid #dbe2ea;background:#fff;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700;cursor:pointer}
.community-write-toolbar button:hover{border-color:#ef4444;color:#b91c1c}

.community-write-list-divider{position:relative;margin:26px 0 10px;text-align:center}
.community-write-list-divider::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e2e8f0}
.community-write-list-divider span{position:relative;display:inline-block;padding:0 10px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:700;letter-spacing:.02em}
.community-bottom-bar{display:flex;align-items:center;gap:10px;margin:12px 0 4px;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.community-bottom-bar .community-search{flex:1;max-width:none}
.community-bottom-bar .community-btn{flex-shrink:0}

.community-comment-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.community-comment-item{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#fff}
.community-comment-meta{font-size:12px;color:#64748b;margin-bottom:6px}
.community-comment-body{font-size:14px;line-height:1.75;color:#0f172a;word-break:break-word}
.community-comment-empty{padding:12px;border:1px dashed #dbe2ea;border-radius:10px;color:#64748b;background:#f8fafc}
.community-comment-write textarea{width:100%;min-height:90px;border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;resize:vertical;margin-bottom:8px}
.community-comment-delete,.community-comment-reply,.community-comment-toggle,.community-reply-cancel,.community-reply-save{margin-top:8px;border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:5px 8px;font-size:12px;cursor:pointer;font-weight:700;line-height:1.2}
.community-comment-toggle{border-color:#e2e8f0;background:#f8fafc;color:#334155}
.community-reply-box textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px}


/* /css/components/community.css */
.community-page .wawa-legal{max-width:1200px;padding:0 0 60px}
.community-page .wawa-legal__page-title{display:none}
.community-page .wawa-legal__content{max-width:1100px;margin:0 auto;padding:0 14px;background:transparent}
.community-page .page-sidebar{position:sticky;top:136px;align-self:start;padding-top:0}
.community-page .post-content-wrap > .page-sidebar{position:sticky !important;top:136px !important;align-self:start !important;padding-top:0 !important}
.community-page .page-sidebar .sidebar-box--sticky{display:none !important}

.community-hero{margin:8px auto 14px;max-width:1100px;background:#fff;border-bottom:1px solid #e5e7eb}
.community-hero__inner{padding:18px 4px 14px}
.community-hero__title{margin:0;font-size:30px;font-weight:800;line-height:1.25;color:#111827;letter-spacing:-0.02em}
.community-hero__desc{margin:6px 0 0;color:#6b7280;font-size:14px;line-height:1.45}

.community-wrap{color:#0f172a}
.community-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.community-sub{font-size:13px;color:#64748b;margin:0}
.community-btn{border:none;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer}
.community-btn-red{background:#dc2626;color:#fff}
.community-tabs-row{display:flex;align-items:center;gap:10px;margin:12px 0 16px}
.community-tabs{display:flex;gap:8px;overflow:auto;flex:1;min-width:0;padding-bottom:4px}
.community-tab{border:1px solid #dbe2ea;background:#fff;border-radius:999px;padding:8px 14px;font-size:15px;font-weight:700;letter-spacing:-0.01em;white-space:nowrap;cursor:pointer}
.community-tab.active{background:#dc2626;color:#fff;border-color:#dc2626}
.community-tabs-write{flex-shrink:0}
.community-search{flex:0 0 240px;max-width:38vw;border:1px solid #dbe2ea;border-radius:10px;padding:9px 12px;font-size:14px;outline:none;background:#fff}
.community-search:focus{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.community-board{background:#fff;border:1px solid #dbe2ea;border-radius:14px;overflow:hidden;box-shadow:0 6px 20px rgba(15,23,42,.04)}
.community-board table{width:100%;border-collapse:collapse;table-layout:fixed}
.community-board thead th{background:#f8fafc;color:#334155;font-size:13px;font-weight:800;padding:12px 10px;border-bottom:1px solid #e2e8f0;text-align:center;vertical-align:middle}
.community-board thead th.col-title{text-align:left}
.community-board tbody td{padding:12px 10px;border-bottom:1px solid #eef2f7;font-size:14px;color:#1e293b;vertical-align:middle}
.community-board tbody td.col-title{text-align:left}
.community-board tbody tr:hover{background:#fafcff}
.community-board tbody tr.notice{background:#fff7f7}
.col-no{width:90px;text-align:center;color:#64748b}
.col-title{width:auto}.col-author{width:170px;text-align:center}.col-date{width:110px;text-align:center;color:#64748b}.col-comment{width:80px;text-align:center;color:#64748b}.col-views{width:80px;text-align:center;color:#64748b}.col-like{width:80px;text-align:center;color:#64748b}
.t-title{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.meta-mobile{display:none}
.c-badge{font-size:11px;font-weight:900;padding:3px 8px;border-radius:999px;flex-shrink:0}.c-badge-no{display:inline-flex;align-items:center;justify-content:center;min-width:48px}.b-notice{background:#dc2626;color:#fff;border:1px solid #b91c1c;font-size:12px;font-weight:800;padding:4px 9px;letter-spacing:0;box-shadow:0 1px 0 rgba(0,0,0,.08)}.b-hot{background:#ffedd5;color:#9a3412}
.txt,.community-board .txt,.community-board a.txt,.community-board a.txt:visited{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400 !important;color:#111827 !important;text-decoration:none !important}.community-board a.txt:hover,.community-board a.txt:focus,.community-board a.txt:active{color:#111827 !important;text-decoration:none !important}.community-board a.txt.operator-post,.txt.operator-post{font-weight:800 !important;color:#111827 !important;text-decoration:none !important}.meta-inline{font-size:12px;color:#94a3b8;margin-left:6px}
.community-foot{display:flex;justify-content:center;align-items:center;padding:12px;border-top:1px solid #e2e8f0;background:#fbfdff}
.community-pager{display:flex;gap:6px;align-items:center}
.p{min-width:32px;height:32px;border:1px solid #dbe2ea;background:#fff;border-radius:8px;font-weight:800;cursor:pointer}
.p.active{background:#dc2626;color:#fff;border-color:#dc2626}
.community-fab{display:none;position:fixed;right:16px;bottom:20px;z-index:30}.community-fab .community-btn{border-radius:999px;box-shadow:0 10px 24px rgba(0,0,0,.2)}

.community-modal{position:fixed;inset:0;background:rgba(2,6,23,.5);display:none;align-items:flex-end;justify-content:center;z-index:40}
.community-modal.open{display:flex}
.community-panel{background:#fff;width:100%;max-width:820px;border-radius:18px 18px 0 0;padding:20px;max-height:88vh;overflow:auto}
.community-field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.community-field input,.community-field select,.community-field textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;font-size:14px}.community-field textarea{min-height:170px}
.community-actions{display:flex;gap:8px;justify-content:flex-end}

/* 커뮤니티 본문 이미지는 너무 크게 보이지 않도록 제한 */
.community-page .post-body-image{margin:18px 0;text-align:center;overflow:visible}
.community-page .post-body-image img{width:min(100%, 720px);margin:0 auto;border-radius:10px}

.community-write-toolbar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.community-write-toolbar button{border:1px solid #dbe2ea;background:#fff;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:700;cursor:pointer}
.community-write-toolbar button:hover{border-color:#ef4444;color:#b91c1c}

.community-write-list-divider{position:relative;margin:26px 0 10px;text-align:center}
.community-write-list-divider::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e2e8f0}
.community-write-list-divider span{position:relative;display:inline-block;padding:0 10px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:700;letter-spacing:.02em}
.community-bottom-bar{display:flex;align-items:center;gap:10px;margin:12px 0 4px;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}
.community-bottom-bar .community-search{flex:1;max-width:none}
.community-bottom-bar .community-btn{flex-shrink:0}

.community-comment-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.community-comment-item{border-bottom:1px solid #e2e8f0;padding:12px 6px;background:transparent}
.community-comment-main{display:grid;grid-template-columns:130px 1fr 130px;gap:12px;align-items:start}
.community-comment-author{font-size:14px;font-weight:700;color:#334155}
.community-comment-date{font-size:13px;color:#64748b;text-align:right;white-space:nowrap}
.community-comment-date-wrap{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.community-comment-body{font-size:14px;line-height:1.75;color:#0f172a;word-break:break-word}
.community-comment-body-clickable{cursor:pointer}
.community-comment-body-clickable:hover{background:#fff7f7;border-radius:6px}
.community-comment-textbox{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#fff}
.community-inline-reply-box{margin-top:10px;padding-top:10px;border-top:1px dashed #fecaca}
.community-inline-reply-textarea{width:100%;min-height:78px;border:1px solid #fecaca;border-radius:8px;padding:9px 10px;resize:vertical}
.community-inline-reply-save,.community-inline-reply-cancel{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:5px 8px;font-size:12px;cursor:pointer;font-weight:700;line-height:1.2}
.community-inline-mention{display:inline-block;padding:1px 7px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-weight:700}
.community-reply-group{margin-top:10px;padding:10px 12px;border:1px solid #fee2e2;background:#fffafa;border-radius:10px}
.community-reply-row{display:grid;grid-template-columns:130px 1fr 130px;gap:12px;align-items:start}
.community-reply-row-wrap+.community-reply-row-wrap{margin-top:10px;padding-top:10px;border-top:1px dashed #fecaca}
.community-reply-arrow{color:#b91c1c;font-weight:900;margin-right:4px}
.community-comment-empty{padding:12px;border:1px dashed #dbe2ea;border-radius:10px;color:#64748b;background:#f8fafc}
.community-comment-write textarea{width:100%;min-height:90px;border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px;resize:vertical;margin-bottom:8px}
.community-comment-delete,.community-comment-reply,.community-comment-toggle,.community-reply-cancel,.community-reply-save{margin-top:8px;border:1px solid #fecaca;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:5px 8px;font-size:12px;cursor:pointer;font-weight:700;line-height:1.2}
.community-comment-delete-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #dc2626;background:#dc2626;color:#fff;border-radius:3px;font-size:13px;line-height:1;cursor:pointer;padding:0;font-weight:800}
.community-comment-delete-icon:hover{background:#b91c1c;border-color:#b91c1c}
.community-comment-toggle{border-color:#e2e8f0;background:#f8fafc;color:#334155}
.community-reply-box textarea{border:1px solid #dbe2ea;border-radius:10px;padding:10px 12px}

@media (min-width:769px){
  .community-modal{align-items:center}
  .community-panel{border-radius:18px;max-width:900px;padding:24px}
}

@media (max-width:900px){.col-author,.col-comment,.col-views,.col-like{display:none}.col-date{width:90px}}
@media (max-width:768px){
  .community-hero{margin:6px auto 10px;border-radius:0;border-bottom:1px solid #e5e7eb}
  .community-hero__inner{padding:14px 2px 10px}
  .community-hero__title{font-size:24px}
  .community-hero__desc{font-size:13px;line-height:1.4}

  .community-tabs-row{gap:8px;flex-wrap:wrap}
  .community-tabs{flex:1 1 100%;overflow:visible;flex-wrap:wrap;gap:6px}
  .community-tab{padding:7px 11px;font-size:13px}
  .community-tabs-write{padding:8px 11px;font-size:13px}
  .community-search{flex:1 1 100%;max-width:none;order:3}

  .community-board{border-radius:12px}
  .community-board thead{display:none}
  .community-board table,.community-board tbody,.community-board tr,.community-board td{display:block;width:100%}
  .community-board tbody td{border:none;padding:0}
  .community-board tbody tr{border-bottom:1px solid #eef2f7;padding:12px}

  .col-no,.col-author,.col-date,.col-comment,.col-views,.col-like{display:none !important}
  .col-title .t-title{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
  .txt{font-size:15px;line-height:1.45;max-width:100%}
  .meta-mobile{display:block;font-size:12px;color:#64748b;margin-top:6px}

  .community-foot{padding:10px}
  .community-fab{display:block}
  .community-modal{align-items:flex-end}
  .community-panel{padding:16px}
  .community-comment-item{padding:10px 4px}
  .community-comment-main{grid-template-columns:1fr;gap:6px}
  .community-reply-row{grid-template-columns:1fr;gap:6px}
  .community-comment-date{text-align:left;font-size:12px}
  .community-comment-date-wrap{justify-content:flex-start}
  .community-comment-actions{flex-wrap:wrap;gap:6px !important}
}


/* /css/common/banner.css */
/* 광고 배너 */
.wawa-banner {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 20px;
  padding: 12px 16px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.wawa-banner-link {
  display: block;
  width: 100%;
  max-width: 1400px;
}

.wawa-banner-img {
  width: 100%;
  height: auto;
  max-height: 150px;
  object-fit: contain;
  border-radius: 8px;
}

.wawa-banner-label {
  position: absolute;
  top: 16px;
  left: 20px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 4px;
  letter-spacing: 0.5px;
}

.wawa-banner-close {
  position: absolute;
  top: 16px;
  right: 20px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  border: none;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 16px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
}

.wawa-banner-close:hover {
  background: rgba(0, 0, 0, 0.8);
}

/* 배너 숨김 상태 */
.wawa-banner.hidden {
  display: none;
}

/* 모바일 대응 */
@media (max-width: 768px) {
  .wawa-banner {
    padding: 8px 12px;
  }
  
  .wawa-banner-img {
    max-height: 70px;
  }
  
  .wawa-banner-label {
    top: 12px;
    left: 16px;
    font-size: 9px;
  }
  
  .wawa-banner-close {
    top: 12px;
    right: 16px;
    width: 20px;
    height: 20px;
    font-size: 14px;
  }
}


/* /css/components/home-latest-cards.css */
/* ===== 카드 그리드 (홈페이지 상단) ===== */
.wawa-homepage {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 24px 40px;
}

.wawa-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.wawa-card {
  background: #fff;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #d1d5db;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
}

.wawa-card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  transform: translateY(-4px);
  border-color: #DC2626;
}

/* 썸네일 — WP 비율에 맞춤 */
.wawa-card-thumb {
  position: relative;
  overflow: hidden;
  padding-top: 52%;
}

.wawa-card-thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s;
}

.wawa-card:hover .wawa-card-thumb img {
  transform: scale(1.03);
}

/* 카테고리 태그 */
.wawa-card-tag {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: var(--accent);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 4px;
  line-height: 1.4;
}

/* 본문 */
.wawa-card-body {
  padding: 16px 20px;
  border-top: 1px solid #d1d5db;
}

.wawa-card-body h3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 8px;
  min-height: 60px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--text);
}

.wawa-card-body h3 a {
  color: inherit;
  text-decoration: none;
}

.wawa-card-body h3 a:hover {
  color: var(--accent);
}

.wawa-card-date {
  font-size: 13px;
  color: var(--text-light);
}

/* 빈 카드 */
.wawa-card-empty-thumb {
  background: #f3f4f6;
  aspect-ratio: 16 / 9;
}

.wawa-card-empty {
  display: flex;
  align-items: center;
  justify-content: center;
}

.wawa-card-empty p {
  color: #9ca3af;
  font-size: 14px;
  margin: 0;
}

/* ===== 퀵 링크 4열 ===== */
.wawa-quick-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
}

.wawa-quick-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 12px;
  background: #fff;
  border: 1px solid var(--border);
  border-left: 4px solid var(--accent);
  border-radius: 10px;
  text-decoration: none;
  transition: box-shadow 0.2s;
}

.wawa-quick-link:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
  opacity: 1;
}

.wawa-quick-num {
  width: 30px;
  height: 30px;
  background: var(--accent);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  flex-shrink: 0;
}

.wawa-quick-link strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--text);
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wawa-quick-link p {
  font-size: 12px;
  color: var(--text-light);
  margin: 1px 0 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ===== 태블릿 ===== */
@media (max-width: 1024px) {
  .wawa-homepage {
    padding: 20px 20px;
  }

  .wawa-cards {
    gap: 16px;
  }

  .wawa-quick-links {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ===== 모바일 ===== */
@media (max-width: 768px) {
  .wawa-homepage {
    padding: 16px 16px;
  }

  .wawa-cards {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .wawa-card-body {
    padding: 12px 14px;
  }

  .wawa-card-body h3 {
    font-size: 14px;
    min-height: auto;
  }

  .wawa-quick-links {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .wawa-quick-link {
    padding: 14px 16px;
  }
}


/* /css/components/home-sidebar.css */
/* ===== 홈 상단 3컬럼: 카드(좌) + 사이드바(우) ===== */
.wawa-home-top {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 24px;
  align-items: stretch;
}

/* 우측 사이드바 */
.wawa-home-sidebar {
  background: #fff;
  border-radius: 12px;
  border: 1px solid var(--border);
  padding: 20px;
  display: flex;
  flex-direction: column;
}

.home-sidebar__list {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.home-sidebar__title {
  font-size: 20px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 4px;
}

.home-sidebar__line {
  border-bottom: 3px solid var(--accent);
  width: 100%;
  margin-bottom: 12px;
}

.home-sidebar__list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid #f3f4f6;
}

.home-sidebar__list li:last-child {
  border-bottom: none;
}

.home-sidebar__thumb {
  width: 72px;
  height: 54px;
  border-radius: 6px;
  background: #e5e7eb;
  flex-shrink: 0;
  overflow: hidden;
}

.home-sidebar__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-sidebar__info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.home-sidebar__cat {
  color: var(--accent);
  font-size: 12px;
  font-weight: 700;
}

.home-sidebar__info a {
  color: #374151;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-sidebar__info a:hover {
  color: var(--accent);
}

.home-sidebar__empty {
  color: #9ca3af;
  font-size: 13px;
}

/* 실시간 속보 라인형 표시 */
.home-sidebar__line-item {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  min-width: 0;
}

.home-sidebar__time {
  color: #b91c1c;
  font-size: 12px;
  font-weight: 700;
  flex: 0 0 auto;
  margin-top: 1px;
}

.home-sidebar__dash {
  color: #9ca3af;
  font-size: 13px;
  font-weight: 600;
  flex: 0 0 auto;
  margin-top: 1px;
}

.home-sidebar__headline {
  color: #374151;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.45;
  min-width: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-sidebar__cta {
  margin-top: 14px;
  width: 100%;
  text-align: center;
}

/* ===== 태블릿 ===== */
@media (max-width: 1024px) {
  .wawa-home-top {
    grid-template-columns: 1fr 280px;
    gap: 16px;
  }
}

/* ===== 모바일 ===== */
@media (max-width: 768px) {
  .wawa-home-top {
    grid-template-columns: 1fr;
  }
  .wawa-home-sidebar {
    padding: 16px;
  }
}


/* /css/components/exchange-cards.css */
/* ===== 홈 거래소 비교 섹션 ===== */
.wawa-exchange-section {
  background: #f8f9fc;
  padding: 48px 40px 32px;
  text-align: center;
}

.wawa-exchange-heading,
.wawa-exchange-sub,
.wawa-exchange-cta {
  text-align: center;
}

.wawa-exchange-grid {
  max-width: var(--max-width);
  margin-left: auto;
  margin-right: auto;
}

.wawa-exchange-heading {
  font-size: 28px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 8px;
}

.wawa-exchange-heading span {
  color: var(--accent);
}

.wawa-exchange-heading .red {
  color: var(--accent);
}

.wawa-exchange-sub {
  font-size: 14px;
  color: var(--text-light);
  margin: 0 0 20px;
}

.wawa-exchange-cta {
  display: inline-block;
  background: var(--accent);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  padding: 12px 28px;
  border-radius: 8px;
  text-decoration: none;
  margin-bottom: 28px;
  transition: opacity 0.2s;
}

.wawa-exchange-cta:hover {
  opacity: 0.9;
  color: #fff;
}

/* 2x2 그리드 */
.wawa-exchange-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  text-align: left;
}

/* 개별 카드 */
.wawa-ex-card {
  background: #fff;
  border: 1px solid var(--border);
  border-left: 4px solid var(--accent);
  border-radius: 12px;
  padding: 28px;
}

.wawa-ex-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.wawa-ex-logo {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

.wawa-ex-header strong {
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
}

/* 수수료 2열 */
.wawa-ex-fees {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 14px;
}

.wawa-ex-fee {
  background: #f9fafb;
  border: 1px solid #f3f4f6;
  border-radius: 8px;
  padding: 12px;
  text-align: center;
}

.wawa-ex-fee-label {
  display: block;
  font-size: 12px;
  color: var(--text);
  font-weight: 600;
  margin-bottom: 4px;
}

.wawa-ex-fee strong {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  display: block;
  margin-bottom: 2px;
}

.wawa-ex-fee > span:last-child {
  font-size: 11px;
  color: var(--text);
}

/* 태그 */
.wawa-ex-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 14px;
  justify-content: center;
}

.wawa-ex-tags span {
  font-size: 12px;
  font-weight: 600;
  color: var(--accent);
  padding: 6px 12px;
  border: 1.5px solid var(--accent);
  border-radius: 6px;
}

/* 버튼 */
.wawa-ex-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: center;
  margin-top: 4px;
}

.wawa-ex-btn-outline {
  padding: 12px 24px;
  border: 2px solid #d1d5db;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--text);
  text-decoration: none;
  transition: background 0.2s;
}

.wawa-ex-btn-outline:hover {
  background: #f9fafb;
  opacity: 1;
  color: var(--text);
}

.wawa-ex-btn-red {
  padding: 12px 28px;
  background: var(--accent);
  color: #fff;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.2s;
}

.wawa-ex-btn-red:hover {
  opacity: 0.9;
  color: #fff;
}

/* ===== 태블릿 ===== */
@media (max-width: 1024px) {
  .wawa-exchange-section { padding: 36px 20px 24px; }
  .wawa-exchange-heading { font-size: 24px; }
  .wawa-ex-fee strong { font-size: 17px; }
}

/* ===== 모바일 ===== */
@media (max-width: 768px) {
  .wawa-exchange-section { padding: 28px 16px 20px; }
  .wawa-exchange-heading { font-size: 20px; }
  .wawa-exchange-grid { grid-template-columns: 1fr; }
  .wawa-ex-card { padding: 18px; }
  .wawa-ex-header strong { font-size: 16px; }
  .wawa-ex-fee strong { font-size: 16px; }
}


/* /css/components/all-info.css */
/* ===== 홈 커뮤니티 최신글 섹션 ===== */
.wawa-home-community {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 28px 40px 4px;
}

.wawa-home-community__heading {
  margin: 0 0 8px;
  font-size: 28px;
  font-weight: 800;
  color: var(--dark);
  text-align: center;
}

.wawa-home-community__heading span {
  color: var(--accent);
}

.wawa-home-community__sub {
  margin: 0 0 16px;
  color: var(--text-light);
  font-size: 14px;
  text-align: center;
}

.wawa-home-community__tabs { display:flex; gap:10px; flex-wrap:wrap; margin: 0 0 12px; }
.wawa-home-community__tab { border:1px solid #e5e7eb; background:#fff; border-radius:999px; padding:8px 14px; font-weight:700; cursor:pointer; }
.wawa-home-community__tab.is-active { background:var(--accent); color:#fff; border-color:var(--accent); }

.wawa-home-community-board { border:1px solid #e5e7eb; border-radius:12px; overflow:hidden; }
.wawa-home-community-board table { width:100%; border-collapse:collapse; }
.wawa-home-community-board thead th { background:#f8fafc; font-size:14px; padding:12px 10px; text-align:center; }
.wawa-home-community-board tbody td { border-top:1px solid #f1f5f9; padding:12px 10px; font-size:14px; text-align:center; }
.wawa-home-community-board .col-title { text-align:left; }
.wawa-home-community-board .col-title a { color:#111827; text-decoration:none; font-weight:700; }
.wawa-home-community-board .col-title a:hover { color:var(--accent); }
.home-community-notice { background:var(--accent); color:#fff; border-radius:999px; padding:4px 10px; font-size:12px; font-weight:700; }
.home-community-empty { color:#9ca3af; text-align:left; }

/* ===== 암호화폐에 대한 모든 정보 섹션 ===== */
.wawa-all-info {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 48px 40px 32px;
  text-align: center;
  position: relative;
  z-index: 0;
}

.wawa-all-info::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: #ffffff;
  z-index: -1;
}

.wawa-all-info__heading {
  font-size: 28px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 8px;
}

.wawa-all-info__heading span {
  color: var(--accent);
}

.wawa-all-info__sub {
  font-size: 14px;
  color: var(--text-light);
  margin: 0 0 28px;
}

/* 분석 카드 4열 */
.wawa-all-info__cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-bottom: 36px;
  text-align: left;
}

.wawa-ai-card {
  border-radius: 10px;
  overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s;
  background: #fff;
  border: 1px solid #e5e7eb;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  padding-bottom: 12px;
}

.wawa-ai-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.wawa-ai-card__thumb {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 10px;
  background: #e5e7eb;
}

.wawa-ai-card__thumb a {
  display: block;
  width: 100%;
  height: 100%;
}

.wawa-ai-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wawa-ai-card__tag {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: var(--accent);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 4px;
}

.wawa-ai-card__title {
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
  margin: 10px 0 4px;
  padding: 0 12px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.wawa-ai-card__title a {
  color: inherit;
  text-decoration: none;
}

.wawa-ai-card__title a:hover {
  color: var(--accent);
}

.wawa-ai-card__date {
  font-size: 13px;
  color: var(--text-light);
  padding: 0 12px;
}

.wawa-ai-card--empty .wawa-ai-card__thumb {
  background: #f3f4f6;
}

.wawa-ai-card--empty p {
  color: #9ca3af;
  font-size: 14px;
  margin: 10px 0 0;
}

/* 뉴스 3열 */
.wawa-all-info__news-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  text-align: left;
  margin-bottom: 28px;
}

.wawa-all-info__news-col h3 {
  font-size: 20px;
  font-weight: 800;
  color: var(--dark);
  margin: 0 0 14px;
  padding-bottom: 10px;
  border-bottom: 3px solid var(--accent);
}

.wawa-all-info__news-col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.wawa-all-info__news-col li {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid #f3f4f6;
}

.wawa-all-info__news-col li:last-child {
  border-bottom: none;
}

.ai-news__thumb {
  width: 72px;
  height: 54px;
  border-radius: 6px;
  background: #e5e7eb;
  flex-shrink: 0;
  overflow: hidden;
}

.ai-news__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ai-news__info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.ai-news__cat {
  font-size: 12px;
  font-weight: 700;
  color: var(--accent);
}

.ai-news__info a {
  font-size: 14px;
  font-weight: 600;
  color: #374151;
  text-decoration: none;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ai-news__info a:hover {
  color: var(--accent);
}

.ai-news__empty {
  color: #9ca3af;
  font-size: 13px;
}

/* 홈 거래소 축약 섹션 (A안) */
.wawa-exchange-compact {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 10px 40px 4px;
}

.wawa-exchange-compact__inner {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
}

.wawa-exchange-compact__text strong { font-size: 16px; color: #111827; }
.wawa-exchange-compact__text p { margin: 3px 0 0; font-size: 13px; color: #6b7280; }
.wawa-exchange-compact__chips { margin-left: auto; display: flex; gap: 6px; flex-wrap: wrap; }
.wawa-exchange-compact__chips span { background: #f3f4f6; border: 1px solid #e5e7eb; border-radius: 999px; padding: 4px 10px; font-size: 12px; font-weight: 700; color: #374151; }
.wawa-exchange-compact__cta { white-space: nowrap; font-weight: 800; color: var(--accent); text-decoration: none; }

/* 하단 뉴스 상단 거래소 4카드 (분석카드급 크기) */
.wawa-home-mini-exchange-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  margin: 0 0 28px;
}

.wawa-home-mini-ex-card {
  text-align: left;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #fcfcfd 100%);
  padding: 16px 14px;
  min-height: 240px;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.wawa-home-mini-ex-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(0,0,0,0.09);
  border-color: #fecaca;
}

.wawa-home-mini-ex-card__head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.wawa-home-mini-ex-card__head img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
}

.wawa-home-mini-ex-card__head strong {
  font-size: 18px;
  color: #111827;
  line-height: 1.2;
}

.wawa-home-mini-ex-card__point {
  margin: 0 0 10px;
  color: #1f2937;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 700;
}

.wawa-home-mini-ex-card__badge {
  margin-left: auto;
  font-size: 11px;
  font-weight: 800;
  color: #b91c1c;
  background: #fef2f2;
  border: 1px solid #fecaca;
  border-radius: 999px;
  padding: 3px 8px;
}

.wawa-home-mini-ex-card__fees {
  display: grid;
  gap: 8px;
  margin: 0 0 12px;
}

.wawa-home-mini-ex-card__fees > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #f9fafb;
  border: 1px solid #eef2f7;
  border-radius: 8px;
  padding: 8px 10px;
}

.wawa-home-mini-ex-card__fees span {
  color: #6b7280;
  font-size: 13px;
  font-weight: 700;
}

.wawa-home-mini-ex-card__fees strong {
  color: #111827;
  font-size: 15px;
  font-weight: 800;
}

.wawa-home-mini-ex-card__benefit {
  margin: 0 0 10px;
  font-size: 12px;
  color: #7f1d1d;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  padding: 7px 9px;
  line-height: 1.4;
  font-weight: 700;
}

.wawa-home-mini-ex-card__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.wawa-home-mini-ex-card__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 42px;
  border-radius: 9px;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.wawa-home-mini-ex-card__btn--ghost {
  background: #fff;
  color: #b91c1c;
  border: 1px solid #fecaca;
}

.wawa-home-mini-ex-card__btn:hover {
  filter: brightness(1.03);
}

.wawa-home-mini-exchange-note {
  margin: 8px 0 18px;
  text-align: right;
  color: #9ca3af;
  font-size: 12px;
}

/* 커뮤니티+거래소 분할 레이아웃 */
.wawa-home-community--split {
  position: relative;
  z-index: 0;
}

.wawa-home-community--split::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  background: #f3f4f6;
  z-index: -1;
}

.wawa-home-community--split .wawa-home-community-layout {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 18px;
  align-items: stretch;
}

.wawa-home-community--split .wawa-home-community-exchanges {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.wawa-home-community--split .wawa-home-community-exchanges .wawa-home-mini-exchange-grid {
  flex: 1;
  margin-bottom: 0;
  align-content: stretch;
  grid-auto-rows: 1fr;
}

.wawa-home-community--split .wawa-home-mini-ex-card {
  min-height: 0;
  height: 100%;
}

.wawa-home-community--split .wawa-home-community-right {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 16px;
  box-shadow: 0 4px 14px rgba(15,23,42,0.05);
  height: 100%;
  display: flex;
  flex-direction: column;
}

.wawa-home-community--split .wawa-home-community-board {
  flex: 1;
}

.wawa-home-community--split .wawa-home-community-exchanges .wawa-home-mini-exchange-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-bottom: 0;
}

.wawa-home-community--split .wawa-home-community-board .col-author,
.wawa-home-community--split .wawa-home-community-board .col-date,
.wawa-home-community--split .wawa-home-community-board .col-comment {
  display: none;
}

/* CTA */
.wawa-all-info__cta-wrap {
  text-align: center;
}

/* 태블릿 */
@media (max-width: 1024px) {
  .wawa-home-community { padding: 24px 20px 6px; }
  .wawa-all-info { padding: 36px 20px 24px; }
  .wawa-all-info__cards { grid-template-columns: repeat(2, 1fr); }
  .wawa-all-info__news-grid { gap: 20px; }

  .wawa-exchange-compact { padding: 10px 20px 4px; }
  .wawa-exchange-compact__inner { flex-wrap: wrap; }
  .wawa-exchange-compact__chips { margin-left: 0; }
  .wawa-home-mini-exchange-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .wawa-home-mini-ex-card { min-height: 220px; padding: 14px 12px; }

  .wawa-home-community--split .wawa-home-community-layout {
    grid-template-columns: 1fr;
  }
  .wawa-home-community--split .wawa-home-community-right { padding: 14px; }
}

/* 모바일 */
/* ===== 홈 최신 뉴스 4박스 (뉴스홈 카드 스타일 그대로) ===== */
.wawa-home-live4 {
  max-width: var(--max-width);
  margin: 0 auto;
  padding: 0 20px 14px;
}
.wawa-home-live4__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.wawa-home-live4 .news-card {
  display: flex;
  flex-direction: column;
  border: 1px solid #fee2e2;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  min-height: 100%;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.wawa-home-live4 .news-card:hover { transform: translateY(-2px); box-shadow: 0 10px 20px rgba(15,23,42,.08); border-color:#fca5a5; }
.wawa-home-live4 .news-card-link { display:flex; flex-direction:column; min-height:100%; text-decoration:none; color:inherit; }
.wawa-home-live4 .news-card-thumb { position:relative; display:block; aspect-ratio:16/9; overflow:hidden; background:#f1f5f9; }
.wawa-home-live4 .news-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.wawa-home-live4 .news-card-time { position:absolute; left:8px; top:8px; background:#dc2626; color:#fff; font-size:12px; font-weight:800; padding:4px 9px; border-radius:999px; box-shadow:0 2px 8px rgba(220,38,38,.35); display:inline-flex; align-items:center; gap:6px; }
.wawa-home-live4 .news-card-time .time-tag { opacity:.95; }
.wawa-home-live4 .news-card-time .time-value { font-weight:900; }
.wawa-home-live4 .news-card-body { padding:12px 12px 14px; }
.wawa-home-live4 .news-card-body h3 { margin:0 0 8px; font-size:15px; line-height:1.45; color:#111827; }
.wawa-home-live4 .news-card-body p { margin:0; color:#4b5563; line-height:1.55; font-size:13px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.wawa-home-live4 .news-card.is-empty { display:flex; align-items:center; justify-content:center; min-height:220px; }
.wawa-home-live4__empty { color:#9ca3af; font-weight:700; font-size:14px; }

@media (max-width: 1199px) { .wawa-home-live4__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) { .wawa-home-live4__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .wawa-home-live4__grid { grid-template-columns: 1fr; } }

@media (max-width: 768px) {
  .wawa-home-live4 { padding: 0 12px 10px; }
  .wawa-home-live4__grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; }
  .wawa-home-live4 .news-card-body { padding:10px; }
  .wawa-home-live4 .news-card-body h3 { font-size:14px; }
  .wawa-home-live4 .news-card-body p { font-size:12px; -webkit-line-clamp:2; }

  .wawa-home-community { padding: 20px 16px 4px; }
  .wawa-home-community__heading { font-size: 22px; }
  .wawa-home-community__tabs { gap: 8px; }
  .wawa-home-community__tab { padding: 7px 12px; font-size: 13px; }
  .wawa-home-community-board .col-author,
  .wawa-home-community-board .col-comment,
  .wawa-home-community-board .col-views,
  .wawa-home-community-board .col-like { display:none; }

  .wawa-all-info { padding: 28px 16px 20px; }
  .wawa-all-info__heading { font-size: 22px; }
  .wawa-all-info__cards { grid-template-columns: 1fr 1fr; gap: 14px; }
  .wawa-all-info__news-grid { grid-template-columns: 1fr; gap: 16px; }

  .wawa-exchange-compact { padding: 8px 16px 2px; }
  .wawa-exchange-compact__inner { padding: 12px; }
  .wawa-exchange-compact__text strong { font-size: 15px; }
  .wawa-exchange-compact__text p { font-size: 12px; }
  .wawa-home-mini-exchange-grid { grid-template-columns: 1fr; gap: 10px; margin-bottom: 16px; }
  .wawa-home-mini-ex-card { min-height: auto; padding: 13px 12px; }
  .wawa-home-mini-ex-card__head strong { font-size: 16px; }
  .wawa-home-mini-ex-card__point { font-size: 13px; }
  .wawa-home-mini-exchange-note { margin-top: -4px; text-align: left; }

  .wawa-home-community--split .wawa-home-community-exchanges .wawa-home-mini-exchange-grid {
    grid-template-columns: 1fr;
  }
  .wawa-home-community--split .wawa-home-community-right { padding: 12px; }
}


