html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  font-family: 'Spirit', 'Poppins', 'Arial', sans-serif;
  background: linear-gradient(180deg, #fff6fa, #ffe6f5);
  color: #ff69b4;
  text-align: center;
  min-height: 100vh;
}

#compare-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 16px;
}

.pair {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin: 32px 0;
  position: relative;
}

.draw-button {
  display: flex;
  justify-content: center;
  align-items: center;
}

.draw-button button {
  padding: 12px 24px;
  border-radius: 18px;
  border: none;
  background: linear-gradient(135deg,#ffb6f2,#ff80c6);
  color: #fff;
  font-weight: bold;
  cursor: pointer;
  font-family: 'Spirit', 'Poppins', sans-serif;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.draw-button button:hover {
  opacity:0.9;
  transform:scale(1.05);
}

.char-card {
  width: 200px;
  text-align: center;
  border-radius: 16px;
  border: 3px solid #ed7ddc;
  background: #f6f3f6;
  padding: 8px;
  box-shadow: 2px 2px 10px rgba(255,182,193,0.5);
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.char-card:hover {
  transform: translateY(-4px);
  box-shadow: 2px 4px 16px rgba(255,182,193,0.7);
}

.char-card img {
  width: 100%;
  height: 200px;
  border: 1px solid #ed7ddc;
  object-fit: cover;
  object-position: top;
  border-radius: 12px;
  flex-shrink: 0;
}

.char-name {
  font-weight:700;
  color:#ff3d9e;
  margin-top:6px;
  font-family:'Spirit', 'Poppins', sans-serif;
}

.char-tag {
  font-size:0.9rem;
  color:#ff66b3;
  font-style:italic;
  margin-bottom:4px;
}

#progress-container {
  width:100%;
  background:#ffe6f2;
  border-radius:12px;
  height:28px;
  margin-bottom:12px;
}

#progress-bar {
  width:0%;
  height:100%;
  background:linear-gradient(90deg,#ff9ad8,#ff6fa1);
  border-radius:12px;
  text-align:center;
  color:white;
  font-weight:700;
  line-height:28px;
  font-family:'Spirit', 'Poppins', sans-serif;
}

.tag-section {
  padding:20px;
  margin:24px 0;
  border-radius:18px;
  box-shadow:0 2px 10px rgba(255,192,203,0.3);
}

.tag-section h2 {
  font-size:1.6rem;
  color:#fff;
  margin-bottom:14px;
  text-align:center;
  padding:10px;
  border-radius:12px;
  font-family:'Spirit', 'Poppins', sans-serif;
  box-shadow:0 2px 8px rgba(255,150,200,0.3);
}

.tag-classic h2 { background: linear-gradient(90deg, #ffadc6, #ff77aa); }
.tag-apple h2 { background: linear-gradient(90deg, #ffdde0, #ffb0c1); }
.tag-lilith h2 { background: linear-gradient(90deg, #ffb5e6, #ff80cc); }
.tag-cloud h2 { background: linear-gradient(90deg, #bde0ff, #c2f0ff); }
.tag-pigeon h2 { background: linear-gradient(90deg, #e0c6ff, #d8bfff); }
.tag-north h2 { background: linear-gradient(90deg, #bcd0ff, #98b7ff); }
.tag-republic h2 { background: linear-gradient(90deg, #fbe6ff, #e8c6ff); }
.tag-ruin h2 { background: linear-gradient(90deg, #d0e0ff, #c0f0ff); }
.tag-festivals h2 { background: linear-gradient(90deg, #ffd6b0, #ffc1a8); }
.tag-troupe h2 { background: linear-gradient(90deg, #f6e0ff, #f2c6ff); }
.tag-4 h2 { background: linear-gradient(90deg, #e0fff8, #b0ffe6); }
.tag-stars h2 { background: linear-gradient(90deg, #b7c6ff, #b5aaff); }
.tag-happiness h2 { background: linear-gradient(90deg, #ffd1f0, #ffbde8); }
.tag-story h2 { background: linear-gradient(90deg, #ffe2a8, #ffd37f); }
.tag-fossil h2 { background: linear-gradient(90deg, #e8ffe0, #c8ffc0); }
.tag-constellation h2 { background: linear-gradient(90deg, #f0e8ff, #d0c8ff); }
.tag-secret h2 { background: linear-gradient(90deg, #f2f0ff, #d8d8ff); }
.tag-luxury h2 { background: linear-gradient(90deg, #fff0fb, #ffc0f0); }
.tag-fairytale h2 { background: linear-gradient(90deg, #fff0f8, #ffb6e0); }
.tag-gallery h2 { background: linear-gradient(90deg, #f9f9f9, #eaeaea); }
.tag-forbidden h2 { background: linear-gradient(90deg, #fff8f0, #ffd8b0); }
.tag-wu h2 { background: linear-gradient(90deg, #fff0f0, #ffb0b0); }
.tag-yue h2 { background: linear-gradient(90deg, #fff0f6, #ffc0f0); }

.tag-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill,minmax(200px,1fr));
  gap:16px;
  justify-items: center;
}

.rank-badge {
  position: absolute;
  top: -8px;
  left: -8px;
  background: #ff69b4;
  color: white;
  padding: 4px 6px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 0.9rem;
}

#restart-btn {
  margin-top: 24px;
  padding: 10px 20px;
  background: linear-gradient(135deg, #ffb6f2, #ff80c6);
  color: #fff;
  border: none;
  border-radius: 16px;
  font-size: 1rem;
  font-weight: bold;
  cursor: pointer;
  font-family: 'Spirit', 'Poppins', sans-serif;
}

#restart-btn:hover {
  opacity: 0.9;
  transform: scale(1.05);
}


@font-face {
    font-family: "Spirit"; 
    src: url(/fonts/Spirit.ttf);
}