.review-card { background-color: #ffffff; border-radius: 12px; padding: 24px; border: 1px solid #e0e0e6; margin-bottom: 24px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); }
.review-card .review-header { display: flex; flex-direction: column; gap: 12px; margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid #f0f0f4; }
.review-card .review-rank { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; background-color: #1F25DB; color: #ffffff; font-size: 16px; font-weight: 800; border-radius: 8px; flex-shrink: 0; }
.review-card .review-title { font-size: 22px; font-weight: 800; color: #1a1a2e; margin: 0; }
.review-card .review-usp { font-size: 14px; color: #1F25DB; font-weight: 600; background-color: #ededff; padding: 4px 14px; border-radius: 6px; display: inline-block; }
.review-card .review-image { max-width: 564px; border-radius: 8px; overflow: hidden; margin: 0 auto 20px auto; }
.review-card .review-image img { width: 100%; height: auto; display: block; }
.review-card .review-body { font-size: 15px; line-height: 1.7; color: #444444; margin-bottom: 20px; }
.review-card .review-cta-wrap { text-align: center; margin-top: 20px; }
.review-card .review-cta { display: inline-block; background-color: #1F84DB; color: #ffffff; font-size: 15px; font-weight: 700; padding: 12px 28px; border-radius: 8px; transition: all 0.2s; }
.review-card .review-cta:hover { background-color: #1668B5; text-decoration: none; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(31, 132, 219, 0.3); }
.review-card .review-cta.disabled { background-color: #cccccc; color: #ffffff; cursor: default; pointer-events: none; }
.review-card .review-pros-cons { display: grid; grid-template-columns: 1fr; gap: 16px; }
.review-card .pros-box { background-color: #f0faf0; border-radius: 8px; padding: 16px; border-left: 4px solid #008009; }
.review-card .cons-box { background-color: #fef5f5; border-radius: 8px; padding: 16px; border-left: 4px solid #cc0000; }
.review-card .pros-box .box-title { font-size: 14px; font-weight: 700; color: #008009; margin-bottom: 8px; }
.review-card .cons-box .box-title { font-size: 14px; font-weight: 700; color: #cc0000; margin-bottom: 8px; }
.review-card .box-list { list-style: none; padding: 0; margin: 0; }
.review-card .box-list li { font-size: 14px; padding: 4px 0; display: flex; align-items: flex-start; gap: 8px; line-height: 1.5; }
.review-card .box-list .icon-pro { color: #008009; flex-shrink: 0; margin-top: 2px; }
.review-card .box-list .icon-con { color: #cc0000; flex-shrink: 0; margin-top: 2px; }
.review-jump-list { list-style: none; padding: 0; margin: 0 0 24px 0; counter-reset: jump-counter; }
.review-jump-list li { margin-bottom: 6px; }
.review-jump-list a { font-size: 15px; font-weight: 600; color: #1F84DB; display: flex; align-items: center; gap: 8px; padding: 10px 14px; background-color: #ffffff; border-radius: 8px; border: 1px solid #e0e0e6; transition: all 0.2s; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03); }
.review-jump-list a:hover { background-color: #ededff; border-color: #1F25DB; text-decoration: none; color: #1F25DB; }
.review-jump-list .jump-number { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; background-color: #1F25DB; color: #ffffff; font-size: 12px; font-weight: 700; border-radius: 6px; flex-shrink: 0; }
@media (min-width: 768px) {
  .review-card { padding: 32px; }
  .review-card .review-header { flex-direction: row; align-items: center; gap: 16px; }
  .review-card .review-pros-cons { grid-template-columns: 1fr 1fr; }
  .review-card .review-title { font-size: 24px; }
}
