/* ============================================================
   gunghap.css — gunghap.html 전용 CSS
   ============================================================ */

.gunghap-section {
  max-width: 720px;
  margin: 0 auto;
  padding: 48px 16px;
}

.gunghap-card {
  background: var(--card-bg);
  border: 1px solid var(--card-border);
  border-radius: 16px;
  padding: 36px 28px;
  backdrop-filter: blur(8px);
}

.gunghap-form-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.gunghap-person-title {
  font-size: 16px; font-weight: 700; text-align: center;
  margin-bottom: 16px; color: var(--white);
}

.heart-divider {
  display: flex; align-items: center; justify-content: center;
}
.heart-divider .heart-icon { font-size: 24px; color: var(--gold); }

.gunghap-btn-submit {
  width: 100%; margin-top: 12px; font-size: 17px; padding: 15px; border-radius: 8px;
}

/* Result */
.gunghap-result { display: none; text-align: center; margin-top: 28px; }
.gunghap-result.show { display: block; }

.gunghap-ring {
  width: 140px; height: 140px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px;
}
.gunghap-ring-inner {
  width: 112px; height: 112px; border-radius: 50%;
  background: var(--bg-dark);
  display: flex; align-items: center; justify-content: center;
  flex-direction: column;
}
.gunghap-score-num { font-size: 36px; font-weight: 800; color: var(--gold); }
.gunghap-grade-label {
  font-family: 'Noto Serif KR', serif;
  font-size: 20px; font-weight: 700; color: var(--white);
  text-align: center; margin-bottom: 8px;
}
.gunghap-grade-desc {
  font-size: 14px; color: var(--sub-text);
  text-align: center; line-height: 1.6; margin-bottom: 24px;
}
.gunghap-upsell-text { font-size: 13px; color: var(--sub-text); margin-top: 12px; }

.gunghap-cta-wrap {
  display: flex; flex-direction: column; align-items: center; gap: 12px;
}
.gunghap-cta-wrap .btn-gold { padding: 12px 32px; font-size: 15px; }
.gunghap-cta-wrap .btn-outline { font-size: 13px; padding: 8px 20px; }

/* Bottom CTA */
.gunghap-bottom-cta {
  max-width: 720px; margin: 0 auto; padding: 0 16px 48px; text-align: center;
}
.gunghap-cta-card {
  background: rgba(28,28,28,0.95);
  border: 2px solid var(--gold);
  border-radius: 12px;
  padding: 24px 20px; text-align: center;
}
.gunghap-cta-card .cta-title { font-size: 16px; font-weight: 700; color: var(--white); margin-bottom: 4px; }
.gunghap-cta-card .cta-sub { font-size: 13px; color: var(--sub-text); margin-bottom: 12px; }
.gunghap-cta-card .cta-price {
  font-size: 24px; font-weight: 700; color: var(--gold);
  font-family: 'Noto Serif KR', serif; margin-bottom: 12px;
}

/* Responsive */
@media (min-width: 600px) {
  .gunghap-form-grid { grid-template-columns: 1fr auto 1fr; }
  .heart-divider { flex-direction: column; width: 40px; }
  .heart-divider::before, .heart-divider::after {
    content: ''; flex: 1; width: 1px; background: rgba(196,151,59,0.3);
  }
  .gunghap-card { padding: 40px 36px; }
}
@media (max-width: 599px) {
  .heart-divider { flex-direction: row; height: 40px; }
  .heart-divider::before, .heart-divider::after {
    content: ''; flex: 1; height: 1px; background: rgba(196,151,59,0.3);
  }
  .gunghap-card { padding: 24px 16px; }
}
