.pk-rt{border:1px solid #e5e5e5;border-radius:12px;padding:16px;background:#fff;margin:20px 0}
.pk-rt__title{margin:0 0 6px}
.pk-rt__desc{margin:0 0 14px;opacity:.8}
.pk-rt__card{border:1px solid #eee;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:12px}
.pk-rt__prompt{border:1px solid #ddd;border-radius:10px;padding:12px;background:#fafafa;word-break:break-word}
.pk-rt__jp{font-size:14px;opacity:.8;margin-bottom:4px}
.pk-rt__en{font-size:18px;line-height:1.6}
.pk-rt__done{opacity:.55}
.pk-rt__todo{font-weight:800}
.pk-rt__input{width:100%;border:1px solid #ccc;border-radius:10px;padding:10px 12px;font-size:16px}
.pk-rt__input[disabled]{opacity:.7;background:#f5f5f5}
.pk-rt__hint{opacity:.7}
.pk-rt__stat{border:1px solid #eee;border-radius:10px;padding:8px 10px;min-width:120px}
.pk-rt__stat span{display:block;font-size:12px;opacity:.7}
.pk-rt__stat b{font-size:18px}
.pk-rt__msg{margin:0;font-weight:800}

.pk-rt__kbd{border:1px solid #ddd;border-radius:12px;padding:10px;background:#fff}
.mtjKeyset-line1,.mtjKeyset-line2,.mtjKeyset-line3,.mtjKeyset-line4,.mtjKeyset-line5{display:flex;gap:6px;justify-content:center;margin:6px 0}
.mtjKey{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;border:1px solid #ddd;border-radius:8px;background:#f7f7f7;font-weight:800}
.mtjKey-32{min-width:240px}
.mtjBlackSpace{display:block;width:100%;height:100%}
.mtjHit{outline:3px solid rgba(43,116,255,.6);box-shadow:0 0 0 4px rgba(43,116,255,.15);background:#eef5ff}
.mtjMiss{outline:3px solid rgba(255,77,79,.7);box-shadow:0 0 0 4px rgba(255,77,79,.18);background:#fff1f0}

/* statsは常時表示 */
.pk-rt__stats{display:flex;gap:10px;flex-wrap:wrap}

@media (max-width:768px){
  .pk-rt__en{font-size:16px}
  .pk-rt__stat{min-width:calc(50% - 8px)}
  .mtjKey{min-width:28px;height:28px;font-size:12px}
  .mtjKey-32{min-width:160px}
}

.pk-rt__rank{
  font-size: 22px;
  font-weight: 800;
  display: inline-block;
  padding: 2px 10px;
  border-radius: 999px;
  line-height: 1.2;
}

.pk-rt__rank--s{
  color: #fff;
  background: #d4af37;
}

.pk-rt__rank--a{
  color: #fff;
  background: #e53935;
}

.pk-rt__rank--b{
  color: #fff;
  background: #fb8c00;
}

.pk-rt__rank--c{
  color: #fff;
  background: #43a047;
}

.pk-rt__rank--d{
  color: #fff;
  background: #1e88e5;
}

.pk-rt__rank--e{
  color: #fff;
  background: #757575;
}