@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap');
body {
      background:linear-gradient(135deg, #7f7fd5 0%, #91eae4 100%);;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      margin: 0;
      min-height: 100vh;
      font-family: Arial, sans-serif;
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 0;
    }

    .welcome-section {
      width: 100%;
      text-align: center;
      margin: 0 auto 40px auto;
      padding-top: 42px;
      padding-bottom: 14px;
    }

    .welcome-title {
  color: #ffd600;
  font-size: 2.6rem;
  font-weight: 900;
  letter-spacing: 0.018em;
  text-shadow: 0 2px 18px rgba(60,60,60, 0.13);
  margin-bottom: 13px;
}
.welcome-description {
  color: #e8ecf7;
  font-size: 1.25rem;
  font-weight: 500;
  margin-bottom: 24px;
}

.link-buttons-row {
  display: flex;
  justify-content: center;
  gap: 28px;
  flex-wrap: wrap;
  margin-top: 11px;
}

.link-button {
  text-decoration: none;
  background: #ffd600;
  color: #2c2f36;
  padding: 19px 33px;
  font-size: 1.27rem;
  font-weight: 700;
  border: none;
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(80,80,150,0.15);
  cursor: pointer;
  transition: filter 0.12s, transform 0.13s;
  margin-bottom: 14px;
}

.link-button:hover {
  color: #0077ff;
  filter: brightness(0.94);
  transform: translateY(-2px) scale(1.04);
}
 @media (max-width: 1100px) {
      .welcome-title { font-size: 2.2rem; }
      .welcome-description { font-size: 1.1rem;}
      .link-buttons-row { gap: 19px;}
      .link-button { font-size: 1.15rem; padding: 17px 24px; }
    }
    @media (max-width: 650px) {
      .welcome-section { margin-bottom: 12px; padding-top: 28px;}
      .welcome-title { font-size: 1.15rem; }
      .welcome-description { font-size: 0.91rem;}
      .link-buttons-row { gap: 10px;}
      .link-button { font-size: 1rem; padding: 11px 8vw;}
    }
    /* Number System Tool Section */
    .container {
      max-width: auto;
      margin: 0 auto 40px;
      text-align: center;
      padding: 0 20px 40px;
    }

    h1 {
      color: #ffd600;
      font-size: 2.6rem;
      font-weight: 900;
      letter-spacing: 0.018em;
      text-shadow: 0 2px 18px rgba(60,60,60, 0.13);
      margin-bottom: 13px;
    }

    p.welcome-text {
      color: #e8ecf7;
      font-size: 1.25rem;
      font-weight: 500;
      margin-bottom: 24px;
    }

    .buttons {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 14px;
      margin-bottom: 24px;
    }

    button {
      background: #ffd700;
      color: #1f1f40;
      border: none;
      padding: 12px 22px;
      border-radius: 10px;
      font-weight: 600;
      font-size: 1em;
      cursor: pointer;
      transition: background 0.3s ease;
      min-width: 140px;
      user-select: none;
      box-shadow: 0 2px 6px rgba(31,31,64,0.10);
    }

    button.selected,
    button:focus {
      background: #6969e3ff;
      color: #ffd700;
      outline: 2px solid #dbbd13ff;
    }

    .check-area {
      margin-top: 18px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      align-items: center;
    }

    input[type="number"] {
      background: #fff;
      color: #1f1f40;
      border: none;
      border-radius: 8px;
      padding: 8px 14px;
      font-size: 1.12em;
      margin-bottom: 6px;
      width: 160px;
      outline: none;
      box-sizing: border-box;
      transition: box-shadow 0.2s;
    }

    input[type="number"]:focus {
      box-shadow: 0 0 6px 2px #ffd700;
    }

    .show-btn {
      background: #ffd700;
      color: #1f1f40;
      border: none;
      border-radius: 8px;
      font-weight: 600;
      font-size: 1em;
      cursor: pointer;
      padding: 8px 20px;
      transition: background 0.2s;
    }

    .show-btn:hover {
      background: #e5c500;
    }

    .results-block {
      margin-top: 14px;
      color: #ffd700;
      border-radius: 12px;
      padding: 14px 18px;
    }

    #info-area h2 {
      color: #ffd700;
      margin-bottom: 0%;
    }

    .results-block p {
      margin-top: 0;
      color: #fff;
      font-size: 1.07em;
      word-break: break-word;
    }
