/* Small additions for the rebuilt app (the old stylesheets are kept unchanged). */

/* Logout is now a POST form; make its button look like the other menu items. */
.dropdown-menu .logout-form { margin: 0; }
.dropdown-menu .logout-form .btn-link {
  display: block; width: 100%; padding: 3px 20px; text-align: left;
  color: inherit; text-decoration: none; white-space: nowrap; border: 0;
}
.dropdown-menu .logout-form .btn-link:hover { background-color: #f5f5f5; }

/* Field errors on the login and password forms. */
.form-error { color: #c00; margin: 4px 0 8px; }
.login_warning { color: #c00; }

/* The level page shows only the eSUN / Yomikaki column (online class is out of scope). */
.wrap_level .level_single { float: none; margin: 0 auto; }
.step_frame .tx_activate_note { cursor: default; }

/* Lesson pages */
.esun-audio {
  display: inline-block; min-width: 2.2em; margin: 0 .25em; padding: .15em .5em;
  border: 1px solid #00b8d9; border-radius: 1em; background: #fff; color: #00b8d9; cursor: pointer;
}
.esun-audio.playing { background: #00b8d9; color: #fff; }
.esun-dialog { max-width: 640px; width: 90%; border: 0; border-radius: 6px; padding: 1.5em; }
.esun-dialog::backdrop { background: rgba(0, 0, 0, .5); }
.esun-dialog video { width: 100%; }
#lessonChoice a.disabled, #lesson_num a.disabled, .btn_mt a.disabled { cursor: default; opacity: .5; }
.lesson-empty { padding: 2em; text-align: center; color: #666; }

/* kk thumbnails (the old page used the Swiper slider; a scrollable row is enough) */
.kk-thumbs { display: flex; overflow-x: auto; gap: 8px; }
.kk-thumbs .kk_list { flex: 0 0 32%; min-width: 180px; }
.kk-thumbs .kk_list img { max-width: 100%; }
.esun-gauge { height: 4px; background: #00b8d9; transition: width .2s linear; }
.esun-dialog-check { max-width: 220px; text-align: center; }
.esun-dialog-check .correct { font-size: 64px; }

/* Login page: the old home page showed the login box over a photo slider (#slide_area with
   .bxslider). The new page has one photo instead, the one the old title bars used. */
.login-page #header { background-color: #fff; }
.login-page #header h1.title_top { margin: 0; padding: 12px 0; float: none; }
.login-page #header h1.title_top img { width: auto; max-height: 56px; }
.login-photo {
  background: url(../img/site/ttl_backimg.jpg) center / cover no-repeat;
  min-height: 420px;
  padding: 60px 0;
}
/* The photo area grows with the box, so the box does not float over nothing. */
.login-photo .login_bx { position: static; }
/* The old site hid this box on small screens (it had a pop-up login there instead). */
.login-photo .login.hd_sup { display: block; }
.login-photo .login ul { list-style: none; margin: 0; padding: 0; }
.login_status { color: #2e7d32; }
@media (max-width: 768px) {
  .login-photo { min-height: 0; padding: 30px 0; }
  .login-photo .login { background: rgba(255, 255, 255, 0.85); }
  .login-photo .tp_catch { width: 100%; }
  .login-photo .tp_catch p { height: auto; padding-bottom: 20px; }
}
