/* Lapisan tampilan khusus di atas Bulma. Warna solid, tanpa gradiasi. */

html { background: var(--bulma-scheme-main, #fff); }
body { min-height: 100vh; }

.app-wrap {
  max-width: 560px;
  margin: 0 auto;
  padding: 0 14px calc(84px + env(safe-area-inset-bottom));
}

/* --- Tab navigasi bawah --- */
.app-tabs {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  margin: 0;
  background: var(--bulma-scheme-main, #fff);
  border-top: 1px solid var(--bulma-border, #ededed);
  padding-bottom: env(safe-area-inset-bottom);
  z-index: 30;
}
.app-tabs ul { justify-content: space-around; }
.app-tabs a {
  min-height: 48px;
  padding: 12px 14px;
  font-size: 0.95rem;
  border-width: 2px;
}

/* --- Halaman login --- */
.app-login {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.app-login .card { width: 100%; max-width: 360px; }

/* --- Baris centang peserta/anggota (ramah jempol) --- */
.app-check {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 6px 2px;
  font-size: 1.05rem;
}
.app-check input { width: 22px; height: 22px; flex: none; }
.app-check:not(:first-child) {
  border-top: 1px solid var(--bulma-border-weak, var(--bulma-border, #ededed));
}

/* --- Baris daftar (riwayat) --- */
.app-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 48px;
}

/* Tombol lebar penuh di dalam .buttons (mis. Keluar) */
.buttons form { width: 100%; }
.buttons .button { width: 100%; }
