main {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    user-select: none;
  }
  h1 {
    color: #fefefe;
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  h2 {
    color: #fefefe;
    font-size: 0.8rem;
    font-weight: normal;
    font-style: italic;
  }
  #timer, #errors {
    display: inline-block;
    color: #fefefe;
    padding: 0.3em 0.5em;
    margin-bottom: 0.5em;
  }
  #timer {
    border: 1px solid;
  }
  #timer.finished {
    color: #ff6b6b;
  }
  #errors {
    font-size: 0.8rem;
    opacity: 0.5;
  }
  #errors:before {
    content: attr(data-errors);
  }
  .syllabary {
    table-layout: fixed;
    direction: rtl;
    background: transparent;
    width: 80%;
  }
  .syllabary td > div {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .syllabary td .hiragana, .syllabary td .katakana {
    font-size: 1.4rem;
    line-height: 2rem;
    height: 2rem;
    width: 50%;
    transition: background 0.3s;
  }
  .syllabary td .hiragana.over, .syllabary td .katakana.over {
    box-shadow: inset 0 0 0 2px #333;
  }
  .syllabary td .hiragana.error, .syllabary td .katakana.error {
    transition: background 0s;
    background: #ff6b6b;
  }
  .syllabary td .romaji {
    line-height: 2rem;
    width: 100%;
    color: #333;
    background: #eeeeee7b;
  }

  @media (min-width: 768px) {
    .kanas {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      width: 80%;
      padding: 1em;
      background-color: #e5e5f700;
      opacity: 0.8;
      background-image: url(images/cow.png);
      background-size: 250px 60%; 
      background-repeat:space;
      margin-top: 2%;
    }
  }
  @media (max-width: 768px) {
    .kanas {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      width: 80%;
      padding: 1em;
      background-color: #e5e5f700;
      opacity: 0.8;
      background-image: url(images/cow.png);
      background-size: 150px; 
      background-repeat:space;
      margin-top: 2%;
    }
    
  }
  
 
  .kanas span {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 2rem;
    height: 2rem;
    width: 2rem;
    text-align: center;
    margin: 0.2em;
  }
  .kanas span.dragging {
    opacity: 0.5;
  }
  .hiragana, [data-type="hiragana"] {
    background: linear-gradient(330deg, rgb(191, 242, 181) 0%, rgba(233,217,148,1) 100%);
  }

  .katakana, [data-type="katakana"] {
    background: linear-gradient(330deg, rgba(238,174,202,1) 0%, rgb(148, 233, 152) 100%);
  }
  @media (max-width: 800px) {
    .syllabary td .hiragana, .syllabary td .katakana {
      width: 100%;
    }
  }
  @media (max-width: 570px) {
    .syllabary {
      width: 100%;
      border: none;
    }
  }
  